class ClassHDL::ImplicitPortBasePackage

用于端口定义引入包内结构

Attributes

impl_p_b[RW]
package_name[RW]

Public Class Methods

new(impl_p_b,package_name) click to toggle source
# File lib/tdl/class_hdl/hdl_module_def.rb, line 149
def initialize(impl_p_b,package_name)
    @impl_p_b  = impl_p_b
    @package_name = package_name
end

Public Instance Methods

method_missing(method,*args,&block) click to toggle source
# File lib/tdl/class_hdl/hdl_module_def.rb, line 154
def method_missing(method,*args,&block)
    sdlm_pkg = @impl_p_b.sdlm.send(package_name)
    if sdlm_pkg.respond_to? method
        # @impl_p_b.speciel_type = sdlm_pkg.send(method).typedef_name
        @impl_p_b.speciel_type = method
        @impl_p_b.sub_type = sdlm_pkg.send(method)  ## 针对struct 内元素
        @impl_p_b._struct_q = true
        return @impl_p_b
    else 
        raise TdlError.new("Package.struct dont have <#{method}>")
    end
end