Class: JsonCompleter
- Inherits:
-
Object
show all
- Includes:
- CompletionEngine, ParserEngine
- Defined in:
- lib/json_completer.rb,
lib/json_completer/scanners.rb,
lib/json_completer/parser_engine.rb,
lib/json_completer/completion_engine.rb
Defined Under Namespace
Modules: CompletionEngine, ParserEngine, Scanners
Classes: ArrayContext, ObjectContext, ParseSlot, ParseState, ParsingState
Constant Summary
collapse
- ParseError =
Class.new(StandardError)
- STRUCTURE_CHARS =
['[', '{', ',', ':'].to_set.freeze
- KEYWORD_MAP =
{ 't' => 'true', 'f' => 'false', 'n' => 'null' }.freeze
- VALID_PRIMITIVES =
%w[true false null].to_set.freeze
Class Method Summary
collapse
Instance Method Summary
collapse
#complete
#parse
Constructor Details
#initialize(state = self.class.new_state, parse_state = self.class.new_parse_state) ⇒ JsonCompleter
Returns a new instance of JsonCompleter.
66
67
68
69
|
# File 'lib/json_completer.rb', line 66
def initialize(state = self.class.new_state, parse_state = self.class.new_parse_state)
@state = state
@parse_state = parse_state
end
|
Class Method Details
.complete(partial_json) ⇒ Object
50
51
52
|
# File 'lib/json_completer.rb', line 50
def self.complete(partial_json)
new.complete(partial_json)
end
|
.new_parse_state ⇒ Object
62
63
64
|
# File 'lib/json_completer.rb', line 62
def self.new_parse_state
ParseState.new
end
|
.new_state ⇒ Object
58
59
60
|
# File 'lib/json_completer.rb', line 58
def self.new_state
ParsingState.new
end
|
.parse(partial_json) ⇒ Object
54
55
56
|
# File 'lib/json_completer.rb', line 54
def self.parse(partial_json)
new.parse(partial_json)
end
|