File Coverage

blib/lib/Protocol/HTTP2/StaticTable.pm
Criterion Covered Total %
statement 6 6 100.0
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 8 8 100.0


line stmt bran cond sub pod time code
1             package Protocol::HTTP2::StaticTable;
2 11     11   52 use strict;
  11         17  
  11         289  
3 11     11   51 use warnings;
  11         18  
  11         4540  
4             require Exporter;
5             our @ISA = qw(Exporter);
6             our ( @stable, %rstable );
7             our @EXPORT = qw(@stable %rstable);
8              
9             @stable = (
10             [ ":authority", "" ],
11             [ ":method", "GET" ],
12             [ ":method", "POST" ],
13             [ ":path", "/" ],
14             [ ":path", "/index.html" ],
15             [ ":scheme", "http" ],
16             [ ":scheme", "https" ],
17             [ ":status", "200" ],
18             [ ":status", "204" ],
19             [ ":status", "206" ],
20             [ ":status", "304" ],
21             [ ":status", "400" ],
22             [ ":status", "404" ],
23             [ ":status", "500" ],
24             [ "accept-charset", "" ],
25             [ "accept-encoding", "gzip, deflate" ],
26             [ "accept-language", "" ],
27             [ "accept-ranges", "" ],
28             [ "accept", "" ],
29             [ "access-control-allow-origin", "" ],
30             [ "age", "" ],
31             [ "allow", "" ],
32             [ "authorization", "" ],
33             [ "cache-control", "" ],
34             [ "content-disposition", "" ],
35             [ "content-encoding", "" ],
36             [ "content-language", "" ],
37             [ "content-length", "" ],
38             [ "content-location", "" ],
39             [ "content-range", "" ],
40             [ "content-type", "" ],
41             [ "cookie", "" ],
42             [ "date", "" ],
43             [ "etag", "" ],
44             [ "expect", "" ],
45             [ "expires", "" ],
46             [ "from", "" ],
47             [ "host", "" ],
48             [ "if-match", "" ],
49             [ "if-modified-since", "" ],
50             [ "if-none-match", "" ],
51             [ "if-range", "" ],
52             [ "if-unmodified-since", "" ],
53             [ "last-modified", "" ],
54             [ "link", "" ],
55             [ "location", "" ],
56             [ "max-forwards", "" ],
57             [ "proxy-authenticate", "" ],
58             [ "proxy-authorization", "" ],
59             [ "range", "" ],
60             [ "referer", "" ],
61             [ "refresh", "" ],
62             [ "retry-after", "" ],
63             [ "server", "" ],
64             [ "set-cookie", "" ],
65             [ "strict-transport-security", "" ],
66             [ "transfer-encoding", "" ],
67             [ "user-agent", "" ],
68             [ "vary", "" ],
69             [ "via", "" ],
70             [ "www-authenticate", "" ],
71             );
72              
73             for my $k ( 0 .. $#stable ) {
74             my $key = join ' ', @{ $stable[$k] };
75             $rstable{$key} = $k + 1;
76             $rstable{ $stable[$k]->[0] . ' ' } = $k + 1
77             if ( $stable[$k]->[1] ne ''
78             && !exists $rstable{ $stable[$k]->[0] . ' ' } );
79             }
80              
81             1;