File: parser.rbs

package info (click to toggle)
ruby-simple-oauth 0.4.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 372 kB
  • sloc: ruby: 1,722; makefile: 4; sh: 4
file content (24 lines) | stat: -rw-r--r-- 719 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
module SimpleOAuth
  # Parses OAuth Authorization headers
  class Parser
    # Pattern to match OAuth key-value pairs
    PARAM_PATTERN: Regexp

    # OAuth scheme prefix pattern
    OAUTH_PREFIX: Regexp

    attr_reader scanner: StringScanner
    attr_reader attributes: Hash[Symbol, String]

    def initialize: (String | _ToS header) -> void
    def parse: (Array[Symbol] valid_keys) -> Hash[Symbol, String]

    private

    def scan_oauth_prefix: () -> void
    def scan_params: (Array[Symbol] valid_keys) -> void
    def validate_comma_separator: (String key, String comma) -> void
    def store_if_valid: (String key, String value, Array[Symbol] valid_keys) -> void
    def verify_complete: () -> void
  end
end