class HDLClass::ImplicitInstParam

Attributes

local[RW]
vcs_string[RW]

Public Class Methods

new(sdlm) click to toggle source
# File lib/tdl/class_hdl/hdl_parameter.rb, line 5
def initialize(sdlm)
    @sdlm = sdlm
    @type = nil
end

Public Instance Methods

[](num) click to toggle source
# File lib/tdl/class_hdl/hdl_parameter.rb, line 10
def [](num)
    @type = "[#{num}-1:0]"
    self
end
int() click to toggle source
# File lib/tdl/class_hdl/hdl_parameter.rb, line 20
def int 
    @type = 'int'
    return self 
end
method_missing(name,*args,&block) click to toggle source

def -(name)

@sdlm.Parameter(name,value=0,type:nil,show:true)

end

# File lib/tdl/class_hdl/hdl_parameter.rb, line 29
def method_missing(name,*args,&block)
    if name !~ /\w+/
        raise TdlError.new("cont define parameter name #{name}")
    end
    if args.any?
        unless local
            relp = @sdlm.Parameter(name,args[0],type:@type,show:true)
        else 
            relp = @sdlm.Def.parameter(name: name,value: args[0],local:true,type:@type)
        end
        if vcs_string
            relp.vcs_string = vcs_string
        end
        relp
    else 
        @sdlm.public_send(name)
    end
end
real() click to toggle source
# File lib/tdl/class_hdl/hdl_parameter.rb, line 15
def real
    @type = 'real'
    return self 
end