Class: Steep::TypeConstruction::ModuleContext

Inherits:
Object
  • Object
show all
Defined in:
lib/steep/type_construction.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(instance_type:, module_type:, implement_name:, current_namespace:, const_env:) ⇒ ModuleContext

Returns a new instance of ModuleContext.



90
91
92
93
94
95
96
97
98
# File 'lib/steep/type_construction.rb', line 90

def initialize(instance_type:, module_type:, implement_name:, current_namespace:, const_env:)
  @instance_type = instance_type
  @module_type = module_type
  @defined_instance_methods = Set.new
  @defined_module_methods = Set.new
  @implement_name = implement_name
  @current_namespace = current_namespace
  @const_env = const_env
end

Instance Attribute Details

#const_envObject (readonly)

Returns the value of attribute const_env.



86
87
88
# File 'lib/steep/type_construction.rb', line 86

def const_env
  @const_env
end

#current_namespaceObject (readonly)

Returns the value of attribute current_namespace.



88
89
90
# File 'lib/steep/type_construction.rb', line 88

def current_namespace
  @current_namespace
end

#defined_instance_methodsObject (readonly)

Returns the value of attribute defined_instance_methods.



84
85
86
# File 'lib/steep/type_construction.rb', line 84

def defined_instance_methods
  @defined_instance_methods
end

#defined_module_methodsObject (readonly)

Returns the value of attribute defined_module_methods.



85
86
87
# File 'lib/steep/type_construction.rb', line 85

def defined_module_methods
  @defined_module_methods
end

#implement_nameObject (readonly)

Returns the value of attribute implement_name.



87
88
89
# File 'lib/steep/type_construction.rb', line 87

def implement_name
  @implement_name
end

#instance_typeObject (readonly)

Returns the value of attribute instance_type.



82
83
84
# File 'lib/steep/type_construction.rb', line 82

def instance_type
  @instance_type
end

#module_typeObject (readonly)

Returns the value of attribute module_type.



83
84
85
# File 'lib/steep/type_construction.rb', line 83

def module_type
  @module_type
end