module Dhall::AsDhall::ExpressionList

Public Class Methods

for(values, exprs) click to toggle source
# File lib/dhall/as_dhall.rb, line 147
def self.for(values, exprs)
        types = exprs.map(&TypeChecker.method(:type_of))

        if types.empty?
                Empty
        elsif types.include?(nil) && types.uniq.length <= 2
                Optional
        elsif types.uniq.length == 1
                Mono
        else
                Union
        end.new(values, exprs, types)
end