Class: RBS::DefinitionBuilder::AncestorBuilder::OneAncestors
Relationships & Source Files | |
Inherits: | Object |
Defined in: | lib/rbs/definition_builder/ancestor_builder.rb |
Class Method Summary
- .class_instance(type_name:, params:, super_class:)
- .interface(type_name:, params:)
- .module_instance(type_name:, params:)
- .new(type_name:, params:, super_class:, self_types:, included_modules:, included_interfaces:, prepended_modules:, extended_modules:, extended_interfaces:) ⇒ OneAncestors constructor
- .singleton(type_name:, super_class:)
Instance Attribute Summary
- #extended_interfaces readonly
- #extended_modules readonly
- #included_interfaces readonly
- #included_modules readonly
- #params readonly
- #prepended_modules readonly
- #self_types readonly
- #super_class readonly
- #type_name readonly
Instance Method Summary
Constructor Details
.new(type_name:, params:, super_class:, self_types:, included_modules:, included_interfaces:, prepended_modules:, extended_modules:, extended_interfaces:) ⇒ OneAncestors
# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 17
def initialize(type_name:, params:, super_class:, self_types:, included_modules:, included_interfaces:, prepended_modules:, extended_modules:, extended_interfaces:) @type_name = type_name @params = params @super_class = super_class @self_types = self_types @included_modules = included_modules @included_interfaces = included_interfaces @prepended_modules = prepended_modules @extended_modules = extended_modules @extended_interfaces = extended_interfaces end
Class Method Details
.class_instance(type_name:, params:, super_class:)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 94
def self.class_instance(type_name:, params:, super_class:) new( type_name: type_name, params: params, super_class: super_class, self_types: nil, included_modules: [], included_interfaces: [], prepended_modules: [], extended_modules: nil, extended_interfaces: nil ) end
.interface(type_name:, params:)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 136
def self.interface(type_name:, params:) new( type_name: type_name, params: params, self_types: nil, included_modules: nil, included_interfaces: [], prepended_modules: nil, super_class: nil, extended_modules: nil, extended_interfaces: nil ) end
.module_instance(type_name:, params:)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 122
def self.module_instance(type_name:, params:) new( type_name: type_name, params: params, self_types: [], included_modules: [], included_interfaces: [], prepended_modules: [], super_class: nil, extended_modules: nil, extended_interfaces: nil ) end
.singleton(type_name:, super_class:)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 108
def self.singleton(type_name:, super_class:) new( type_name: type_name, params: nil, super_class: super_class, self_types: nil, included_modules: nil, included_interfaces: nil, prepended_modules: nil, extended_modules: [], extended_interfaces: [] ) end
Instance Attribute Details
#extended_interfaces (readonly)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 15
attr_reader :extended_interfaces
#extended_modules (readonly)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 14
attr_reader :extended_modules
#included_interfaces (readonly)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 12
attr_reader :included_interfaces
#included_modules (readonly)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 11
attr_reader :included_modules
#params (readonly)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 8
attr_reader :params
#prepended_modules (readonly)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 13
attr_reader :prepended_modules
#self_types (readonly)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 10
attr_reader :self_types
#super_class (readonly)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 9
attr_reader :super_class
#type_name (readonly)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 7
attr_reader :type_name
Instance Method Details
#each_ancestor(&block)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 29
def each_ancestor(&block) if block if s = super_class yield s end each_self_type(&block) each_included_module(&block) each_included_interface(&block) each_prepended_module(&block) each_extended_module(&block) each_extended_interface(&block) else enum_for :each_ancestor end end
#each_extended_interface(&block)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 86
def each_extended_interface(&block) if block extended_interfaces&.each(&block) else enum_for :each_extended_interface end end
#each_extended_module(&block)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 78
def each_extended_module(&block) if block extended_modules&.each(&block) else enum_for :each_extended_module end end
#each_included_interface(&block)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 62
def each_included_interface(&block) if block included_interfaces&.each(&block) else enum_for :each_included_interface end end
#each_included_module(&block)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 54
def each_included_module(&block) if block included_modules&.each(&block) else enum_for :each_included_module end end
#each_prepended_module(&block)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 70
def each_prepended_module(&block) if block prepended_modules&.each(&block) else enum_for :each_prepended_module end end
#each_self_type(&block)
[ GitHub ]# File 'lib/rbs/definition_builder/ancestor_builder.rb', line 46
def each_self_type(&block) if block self_types&.each(&block) else enum_for :each_self_type end end