class Dhall::ToMap

Public Class Methods

decode(record, type=nil) click to toggle source
# File lib/dhall/binary.rb, line 117
def self.decode(record, type=nil)
        new(
                record: Dhall.decode(record),
                type:   type.nil? ? nil : Dhall.decode(type)
        )
end

Public Instance Methods

as_json() click to toggle source
# File lib/dhall/ast.rb, line 663
def as_json
        [27, record.as_json] +
                (type.nil? ? [] : [type.as_json])
end
normalize() click to toggle source
Calls superclass method Dhall::Expression#normalize
# File lib/dhall/normalize.rb, line 285
def normalize
        normalized = super
        unless [Record, EmptyRecord].include?(normalized.record.class)
                return normalized
        end

        List.of(*normalized.record.to_h.to_a.map do |(k, v)|
                k = Text.new(value: k)
                Record.new(record: { "mapKey" => k, "mapValue" => v })
        end, type: normalized.type&.argument)
end