Class: Typedocs::TypeSpec::UserDefinedType

Inherits:
Typedocs::TypeSpec show all
Defined in:
lib/typedocs/type_spec.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Typedocs::TypeSpec

#error_message_for

Constructor Details

#initialize(klass, name, spec = nil) ⇒ UserDefinedType

Returns a new instance of UserDefinedType.

Raises:



179
180
181
182
183
184
# File 'lib/typedocs/type_spec.rb', line 179

def initialize(klass, name, spec = nil)
  raise ArgumentError, "Invalid UDT name: #{name.inspect}" unless Typedocs::Context.valid_udt_name?(name)
  @klass = klass
  @name = name
  @spec = spec
end

Instance Attribute Details

#klassObject (readonly)

Returns the value of attribute klass.



185
186
187
# File 'lib/typedocs/type_spec.rb', line 185

def klass
  @klass
end

#nameObject (readonly)

Returns the value of attribute name.



186
187
188
# File 'lib/typedocs/type_spec.rb', line 186

def name
  @name
end

Instance Method Details

#specObject



187
188
189
# File 'lib/typedocs/type_spec.rb', line 187

def spec
  @spec ||= Typedocs.context(klass).defined_type!(name)
end

#to_sourceObject



193
194
195
# File 'lib/typedocs/type_spec.rb', line 193

def to_source
  name
end

#valid?(arg) ⇒ Boolean

Returns:

  • (Boolean)


190
191
192
# File 'lib/typedocs/type_spec.rb', line 190

def valid?(arg)
  spec.valid?(arg)
end