class ClassHDL::ClearGenerateSlaverBlock

Public Class Methods

new(belong_to_module) click to toggle source
Calls superclass method
# File lib/tdl/class_hdl/hdl_generate.rb, line 118
def initialize(belong_to_module)
    @belong_to_module = belong_to_module
    # @dont_gen_sv = true
    super("slavergenblk#{rand(1024)}")
end

Public Instance Methods

method_missing(name,*args,&block) click to toggle source
# File lib/tdl/class_hdl/hdl_generate.rb, line 124
def method_missing(name,*args,&block)
    ClassHDL::AssignDefOpertor.with_rollback_opertors(:old) do
        # puts name
        # puts SdlModule.exist_module?(name)
        # puts @belong_to_module.module_name
        # puts @belong_to_module.respond_to?(name)
        ## 优先判断 belong_to_module 有没有定义此方法
        if root_sdlmodule.respond_to? name 
            root_sdlmodule.send(name,*args,&block)
        elsif SdlModule.exist_module?(name)
        # if SdlModule.exist_module?(name)
            ClassHDL::ImplicitInstModule.new(name,self)
        else
            @belong_to_module.send(name,*args,&block)
        end

    end
end