Module: SyntaxTree::JSON

Defined in:
lib/syntax_tree/json.rb,
lib/syntax_tree/json/version.rb

Defined Under Namespace

Classes: ArrayNode, LiteralNode, ObjectNode, RootNode

Constant Summary collapse

VERSION =
"0.2.0"

Class Method Summary collapse

Class Method Details

.format(source, maxwidth = 80) ⇒ Object



101
102
103
104
105
106
107
# File 'lib/syntax_tree/json.rb', line 101

def format(source, maxwidth = 80)
  formatter = PrettierPrint.new([], maxwidth)
  parse(source).format(formatter)

  formatter.flush
  formatter.output.join
end

.parse(source) ⇒ Object



109
110
111
# File 'lib/syntax_tree/json.rb', line 109

def parse(source)
  RootNode.new(translate(::JSON.parse(source)))
end

.read(filepath) ⇒ Object



113
114
115
# File 'lib/syntax_tree/json.rb', line 113

def read(filepath)
  File.read(filepath)
end