Class: Rbind::RTemplateClassSpecialization
- Inherits:
-
RClass
- Object
- RBase
- RDataType
- RNamespace
- RClass
- Rbind::RTemplateClassSpecialization
- Defined in:
- lib/rbind/core/rtemplate_class.rb
Instance Attribute Summary collapse
-
#template ⇒ Object
Returns the value of attribute template.
-
#template_parameters ⇒ Object
Returns the value of attribute template_parameters.
Attributes inherited from RClass
#attributes, #parent_classes, #polymorphic
Attributes inherited from RNamespace
#consts, #operation_alias, #operations, #root, #type_alias, #used_namespaces
Attributes inherited from RDataType
#cdelete_method, #check_type, #invalid_value, #typedef
Attributes inherited from RBase
#alias, #auto_alias, #cname, #csignature, #doc, #extern_package_name, #ignore, #name, #namespace, #owner, #signature, #version
Instance Method Summary collapse
-
#initialize(name, template, *parameters) ⇒ RTemplateClassSpecialization
constructor
A new instance of RTemplateClassSpecialization.
- #specialize_ruby ⇒ Object
Methods inherited from RClass
#add_attribute, #add_child, #add_parent, #attribute, #basic_type?, #cdelete_method, #child?, #child_class, #child_classes, #constructor?, #empty?, #operation, #operations, #parent?, #parent_class, #polymorphic?, #pretty_print, #pretty_print_name, #used_namespaces
Methods inherited from RNamespace
#add_const, #add_const_val, #add_default_types, #add_namespace, #add_operation, #add_simple_type, #add_simple_types, #add_type, #add_type_alias, #const, #constructor?, #container?, default_operators, #delete_type, #each_const, #each_container, #each_operation, #each_type, #empty?, #enum_hash, #extern?, #method_missing, #operation, #operation?, #pretty_print, #pretty_print_name, #root?, #type, #type?, #types, #use_namespace, #used_extern_types
Methods included from Hooks
Methods inherited from RDataType
#==, #basic_type?, #check_type?, #cname, #const?, #container?, #ownership?, #ptr?, #raw?, #ref?, #remove_const, #remove_ownership, #remove_ptr, #remove_ref, #template?, #to_const, #to_ownership, #to_ptr, #to_raw, #to_ref, #to_single_ptr, #typedef?
Methods inherited from RBase
basename, #binding, #delete!, #doc?, #extern?, #full_name, #generate_signatures, #ignore?, #map_to_namespace, namespace, #namespace?, normalize, #pretty_print, #rename, split_name, to_cname, #to_s
Constructor Details
#initialize(name, template, *parameters) ⇒ RTemplateClassSpecialization
Returns a new instance of RTemplateClassSpecialization.
12 13 14 15 16 17 |
# File 'lib/rbind/core/rtemplate_class.rb', line 12 def initialize(name,template,*parameters) super(name) @name = @name.gsub(">>","> >") # force overwrite to match c++ syntax @template = template @template_parameteres = parameters end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Rbind::RNamespace
Instance Attribute Details
#template ⇒ Object
Returns the value of attribute template.
10 11 12 |
# File 'lib/rbind/core/rtemplate_class.rb', line 10 def template @template end |
#template_parameters ⇒ Object
Returns the value of attribute template_parameters.
10 11 12 |
# File 'lib/rbind/core/rtemplate_class.rb', line 10 def template_parameters @template_parameters end |
Instance Method Details
#specialize_ruby ⇒ Object
19 20 21 |
# File 'lib/rbind/core/rtemplate_class.rb', line 19 def specialize_ruby template.specialize_ruby_specialization(self) end |