Class: RBI::TStructField

Inherits:
NodeWithComments show all
Extended by:
T::Helpers, T::Sig
Defined in:
lib/rbi/model.rb,
lib/rbi/rewriters/merge_trees.rb

Direct Known Subclasses

TStructConst, TStructProp

Instance Attribute Summary collapse

Attributes inherited from NodeWithComments

#comments

Attributes inherited from Node

#loc, #parent_tree

Instance Method Summary collapse

Methods inherited from NodeWithComments

#annotations, #merge_with, #version_requirements

Methods inherited from Node

#detach, #merge_with, #parent_conflict_tree, #parent_scope, #print, #rbs_print, #rbs_string, #replace, #satisfies_version?, #string

Constructor Details

#initialize(name, type, default: nil, loc: nil, comments: []) ⇒ TStructField

Returns a new instance of TStructField.



1256
1257
1258
1259
1260
1261
# File 'lib/rbi/model.rb', line 1256

def initialize(name, type, default: nil, loc: nil, comments: [])
  super(loc: loc, comments: comments)
  @name = name
  @type = type
  @default = default
end

Instance Attribute Details

#defaultObject

Returns the value of attribute default.



1245
1246
1247
# File 'lib/rbi/model.rb', line 1245

def default
  @default
end

#nameObject

Returns the value of attribute name.



1239
1240
1241
# File 'lib/rbi/model.rb', line 1239

def name
  @name
end

#typeObject

Returns the value of attribute type.



1242
1243
1244
# File 'lib/rbi/model.rb', line 1242

def type
  @type
end

Instance Method Details

#compatible_with?(other) ⇒ Boolean

Returns:

  • (Boolean)


546
547
548
# File 'lib/rbi/rewriters/merge_trees.rb', line 546

def compatible_with?(other)
  other.is_a?(TStructField) && name == other.name && type == other.type && default == other.default
end

#fully_qualified_namesObject



1264
# File 'lib/rbi/model.rb', line 1264

def fully_qualified_names; end