Class: MilkTea::Types::ContainsProcTypeVisitor

Inherits:
Visitor
  • Object
show all
Defined in:
lib/milk_tea/core/types/visitor.rb

Instance Method Summary collapse

Methods inherited from Visitor

#dispatch, #visit, #visit_children, #visit_default, #visit_dyn, #visit_event, #visit_function, #visit_generic_struct_definition, #visit_generic_variant_definition, #visit_lifetime_ref, #visit_null, #visit_nullable, #visit_parameter, #visit_simd, #visit_soa, #visit_span, #visit_struct, #visit_struct_instance, #visit_task, #visit_tuple, #visit_type_var, #visit_union, #visit_variant, #visit_variant_arm_payload, #visit_variant_instance

Constructor Details

#initializeContainsProcTypeVisitor

Returns a new instance of ContainsProcTypeVisitor.



123
124
125
126
# File 'lib/milk_tea/core/types/visitor.rb', line 123

def initialize
  super
  @found = false
end

Instance Method Details

#found?Boolean

Returns:

  • (Boolean)


128
129
130
# File 'lib/milk_tea/core/types/visitor.rb', line 128

def found?
  @found
end

#visit_generic_instance(type) ⇒ Object



136
137
138
139
140
# File 'lib/milk_tea/core/types/visitor.rb', line 136

def visit_generic_instance(type)
  if type.name == "array" && type.arguments.first && !type.arguments.first.is_a?(Types::LiteralTypeArg)
    visit(type.arguments.first)
  end
end

#visit_proc(type) ⇒ Object



132
133
134
# File 'lib/milk_tea/core/types/visitor.rb', line 132

def visit_proc(type)
  @found = true
end