Class: TreeHaver::Backends::Psych::Parser
- Inherits:
-
TreeHaver::Base::Parser
- Object
- TreeHaver::Base::Parser
- TreeHaver::Backends::Psych::Parser
- Defined in:
- lib/tree_haver/backends/psych.rb
Overview
Psych parser wrapper
Wraps Psych.parse_stream to provide TreeHaver-compatible parsing.
Instance Attribute Summary
Attributes inherited from TreeHaver::Base::Parser
Instance Method Summary collapse
-
#parse(source) ⇒ Tree
Parse YAML source code.
-
#parse_string(_old_tree, source) ⇒ Tree
Alias for compatibility with tree-sitter API.
Methods inherited from TreeHaver::Base::Parser
Constructor Details
This class inherits a constructor from TreeHaver::Base::Parser
Instance Method Details
#parse(source) ⇒ Tree
Parse YAML source code
137 138 139 140 141 142 143 144 |
# File 'lib/tree_haver/backends/psych.rb', line 137 def parse(source) raise 'Language not set' unless language Psych.available? or raise 'Psych not available' ast = ::Psych.parse_stream(source) Tree.new(ast, source) end |
#parse_string(_old_tree, source) ⇒ Tree
Alias for compatibility with tree-sitter API
151 152 153 |
# File 'lib/tree_haver/backends/psych.rb', line 151 def parse_string(_old_tree, source) parse(source) end |