Class: Jamespath::Tokenizer
- Inherits:
-
Object
- Object
- Jamespath::Tokenizer
- Defined in:
- lib/jamespath/tokenizer.rb
Constant Summary collapse
- TOKENS =
{ lbracket: /\[/, rbracket: /\]/, lbrace: /\{/, rbrace: /\}/, comma: /,/, dot: /\./, colon: /:/, double_pipe: /\|\|/, asterisk: /\*/, number: /-?[0-9]+/, quoted_identifier: /"([^"\\]|\\"|\\\\|\\[^"])*"/, identifier: /[a-zA-Z0-9_\u007E-\uFFFF]+/ }
Instance Attribute Summary collapse
-
#tokens ⇒ Object
readonly
Returns the value of attribute tokens.
Instance Method Summary collapse
Instance Attribute Details
#tokens ⇒ Object (readonly)
Returns the value of attribute tokens.
10 11 12 |
# File 'lib/jamespath/tokenizer.rb', line 10 def tokens @tokens end |
Instance Method Details
#tokenize(source) ⇒ Object
27 28 29 30 31 32 33 34 35 36 |
# File 'lib/jamespath/tokenizer.rb', line 27 def tokenize(source) @pos = 0 @source = source @scanner = StringScanner.new(source) @tokens = [] until @scanner.eos? @tokens << next_token end @tokens end |