class ClassHDL::StructMeta
Attributes
name[R]
sdlm[RW]
struct_slots[R]
Public Class Methods
new(name,sdlm,all_var_collect)
click to toggle source
# File lib/tdl/class_hdl/hdl_struct.rb, line 100 def initialize(name,sdlm,all_var_collect) @name = name @sdlm = sdlm @struct_slots = all_var_collect @tmp_dimension = [] end
Public Instance Methods
-(varname)
click to toggle source
# File lib/tdl/class_hdl/hdl_struct.rb, line 107 def -(varname) rel = StructVar.new(varname,self) rel.belong_to_module = @sdlm rel.dimension = @tmp_dimension @sdlm.Logic_collect << rel # rel.belong_to_module = @sdlm ## 给 sdlmodule 定义 方法 @sdlm.define_singleton_method(varname) do rel end @tmp_dimension = [] return rel end
[](*args)
click to toggle source
# File lib/tdl/class_hdl/hdl_struct.rb, line 127 def [](*args) @tmp_dimension += args return self end
method_missing(method,*args,&block)
click to toggle source
# File lib/tdl/class_hdl/hdl_struct.rb, line 123 def method_missing(method,*args,&block) self - method end