Module: Dhall::Parser::SelectorExpression
- Defined in:
- lib/dhall/parser.rb
Instance Method Summary collapse
Instance Method Details
#value ⇒ Object
143 144 145 146 147 148 149 150 151 152 153 154 |
# File 'lib/dhall/parser.rb', line 143 def value record = capture(:primitive_expression).value selectors = captures(:selector).map(&:value) selectors.reduce(record) do |rec, sels| if sels.is_a?(Array) return EmptyRecordProjection.new(record: rec) if sels.empty? RecordProjection.new(record: rec, selectors: sels) else RecordSelection.new(record: rec, selector: sels) end end end |