class ADSL::Parser::ASTEqual

Public Instance Methods

to_adsl() click to toggle source
# File lib/adsl/parser/ast_nodes.rb, line 1372
def to_adsl
  "equal(#{ @objsets.map(&:to_adsl).join ", " })"
end
typecheck_and_resolve(context) click to toggle source
# File lib/adsl/parser/ast_nodes.rb, line 1362
def typecheck_and_resolve(context)
  objsets = @objsets.map{ |o| o.typecheck_and_resolve context }

  types = objsets.map{ |o| o.type }.select{ |o| not o.nil? }
  # will raise an error if no single common supertype exists
  ADSL::DS::DSClass.common_supertype(types)
    
  return ADSL::DS::DSEqual.new :objsets => objsets
end