class ADSL::Parser::ASTCreateTup
Public Instance Methods
to_adsl()
click to toggle source
# File lib/adsl/parser/ast_nodes.rb, line 922 def to_adsl "#{ @objset1.to_adsl }.#{ @rel_name.text } += #{ @objset2.to_adsl }\n" end
typecheck_and_resolve(context)
click to toggle source
# File lib/adsl/parser/ast_nodes.rb, line 913 def typecheck_and_resolve(context) objset1 = @objset1.typecheck_and_resolve context objset2 = @objset2.typecheck_and_resolve context raise ADSLError, "Ambiguous type on the left hand side on line #{@objset1.lineno}" if objset1.type.nil? return [] if objset2.type.nil? relation = context.find_relation objset1.type, @rel_name.text, @rel_name.lineno, objset2.type return ADSL::DS::DSCreateTup.new :objset1 => objset1, :relation => relation, :objset2 => objset2 end