File: header.rbs

package info (click to toggle)
ruby-http-2 1.1.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky
  • size: 13,360 kB
  • sloc: ruby: 6,031; makefile: 4
file content (30 lines) | stat: -rw-r--r-- 1,051 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
module HTTP2
  module Header
    type header_key = :type | :name | :value | :index
    type header_value = Integer | String | :indexed | :changetablesize | :incremental | :noindex | :neverindexed

    type context_hash = {
     huffman: (:always | :never | :shorter),
     index: (:all | :static | :never),
     table_size: Integer
    }

    type header_type = :indexed | :incremental | :noindex | :neverindexed | :changetablesize

    type header_command = { type: :indexed , name: Integer } |
                          { type: (:incremental | :noindex | :neverindexed), name: Integer | String, value: String } |
                          { type: :changetablesize, ?name: Integer, value: Integer }

    HEADREP: Hash[header_type, { prefix: Integer, pattern: Integer }]

    NAIVE: Hash[Symbol, Symbol]
    LINEAR: Hash[Symbol, Symbol]
    STATIC: Hash[Symbol, Symbol]
    SHORTER: Hash[Symbol, Symbol]
    NAIVEH: Hash[Symbol, Symbol]
    LINEARH: Hash[Symbol, Symbol]
    STATICH: Hash[Symbol, Symbol]
    SHORTERH: Hash[Symbol, Symbol]

  end
end