Class: Gobstones::Lang::Procedure

Inherits:
Definition show all
Defined in:
lib/gobstones/lang/definitions/procedure.rb

Instance Attribute Summary

Attributes inherited from Definition

#arguments, #body, #name, #return_statement

Instance Method Summary collapse

Methods inherited from Definition

#equality_attributes, #evaluate, #named?

Methods included from EqualityDefinition

#==, #equality_attributes

Constructor Details

#initialize(name, args, body) ⇒ Procedure

TODO rename args to a better name, args_tuple?



10
11
12
# File 'lib/gobstones/lang/definitions/procedure.rb', line 10

def initialize(name, args, body)
  super(name, args, body, NoReturnStatement.new)
end

Instance Method Details

#create_context_based_on(outer_context) ⇒ Object



18
19
20
# File 'lib/gobstones/lang/definitions/procedure.rb', line 18

def create_context_based_on(outer_context)
  Runner::ProcedureExecutionContext.based_on(outer_context)
end

#definition_typeObject



14
15
16
# File 'lib/gobstones/lang/definitions/procedure.rb', line 14

def definition_type
  'procedure'
end