Module: JSON5

Defined in:
lib/json5.rb,
lib/json5/input.rb,
lib/json5/lexer.rb,
lib/json5/token.rb,
lib/json5/errors.rb,
lib/json5/limits.rb,
lib/json5/parser.rb,
lib/json5/version.rb,
lib/json5/document.rb,
lib/json5/line_map.rb,
lib/json5/diagnostic.rb,
lib/json5/ecma_string.rb,
lib/json5/number_value.rb,
lib/json5/object_value.rb,
lib/json5/document_nodes.rb,
lib/json5/unicode_tables.rb,
lib/json5/document_parser.rb,
lib/json5/generated_parser.rb,
lib/json5/public_token_names.rb,
lib/json5/ruby_value_builder.rb,
lib/json5/ascii_classification.rb

Defined Under Namespace

Modules: ASCIIClassification, PublicTokenNames, UnicodeTables Classes: ArrayNode, ByteSpan, ConversionError, DepthError, Diagnostic, DiagnosticSink, Document, DocumentParser, DuplicateKeyError, ECMAString, EncodingError, Error, IdentifierNameNode, Input, LexError, Lexer, LimitError, Limits, LineMap, LiteralNode, MemberNode, Node, NumberNode, NumberValue, ObjectNode, ObjectValue, ParseError, Parser, RubyValueBuilder, StringNode, Token, Trivia

Constant Summary collapse

VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.load(io, **options) ⇒ Object



33
34
35
# File 'lib/json5.rb', line 33

def load(io, **options)
  Parser.load(io, **options)
end

.parse(source, **options) ⇒ Object



29
30
31
# File 'lib/json5.rb', line 29

def parse(source, **options)
  Parser.parse(source, **options)
end

.parse_document(source, **options) ⇒ Object



44
45
46
# File 'lib/json5.rb', line 44

def parse_document(source, **options)
  Parser.parse_document(source, **options)
end

.valid?(source, **options) ⇒ Boolean

Returns:

  • (Boolean)


37
38
39
40
41
42
# File 'lib/json5.rb', line 37

def valid?(source, **options)
  parse(source, **options)
  true
rescue JSON5::Error
  false
end