Class: HDLRuby::High::RefThis

Inherits:
Low::RefThis show all
Includes:
HRef
Defined in:
lib/HDLRuby/hruby_high.rb,
lib/HDLRuby/hruby_rsim.rb,
lib/HDLRuby/hruby_rcsim.rb

Overview

Extends the RefThis class for hybrid Ruby-C simulation.

Constant Summary collapse

High =
HDLRuby::High

Constants included from Low::Low2Symbol

Low::Low2Symbol::Low2SymbolPrefix, Low::Low2Symbol::Low2SymbolTable, Low::Low2Symbol::Symbol2LowTable

Instance Attribute Summary

Attributes inherited from Low::Expression

#type

Attributes included from Low::Hparent

#parent

Instance Method Summary collapse

Methods included from HRef

#each, included, #to_event

Methods inherited from Low::RefThis

#boolean_in_assign2select, #casts_without_expression!, #each_deep, #eql?, #explicit_types, #hash, #map_nodes!, #to_another_verilog, #to_c, #to_c_signal, #to_hdr, #to_high

Methods inherited from Low::Ref

#each_node, #each_node_deep, #eql?, #explicit_types, #hash, #map_nodes!, #path_each, #resolve, #to_c, #to_hdr, #to_vhdl

Methods inherited from Low::Expression

#boolean?, #break_types!, #each_node, #each_node_deep, #each_ref_deep, #eql?, #explicit_types, #extract_selects_to!, #hash, #immutable?, #initialize, #leftvalue?, #map_nodes!, #replace_expressions!, #replace_names!, #rightvalue?, #set_type!, #signal2subs!, #statement, #to_c, #to_c_expr, #to_hdr, #to_high, #to_vhdl, #use_name?

Methods included from Low::Low2Symbol

#to_sym

Methods included from Low::Hparent

#hierarchy, #no_parent!, #scope

Constructor Details

This class inherits a constructor from HDLRuby::Low::Expression

Instance Method Details

#behaviorObject

Gets the enclosing behavior if any.



3564
3565
3566
# File 'lib/HDLRuby/hruby_high.rb', line 3564

def behavior
    return High.cur_behavior
end

#cloneObject

Clones.



3549
3550
3551
# File 'lib/HDLRuby/hruby_high.rb', line 3549

def clone
    return RefThis.new
end

#systemObject

Gets the enclosing system type.



3559
3560
3561
# File 'lib/HDLRuby/hruby_high.rb', line 3559

def system
    return High.cur_system
end

#to_lowObject

Converts the this reference to HDLRuby::Low.



3574
3575
3576
3577
3578
3579
3580
3581
# File 'lib/HDLRuby/hruby_high.rb', line 3574

def to_low
    # return HDLRuby::Low::RefThis.new
    refThisL = HDLRuby::Low::RefThis.new
    # # For debugging: set the source high object 
    # refThisL.properties[:low2high] = self.hdr_id
    # self.properties[:high2low] = refThisL
    return refThisL
end

#to_rcsimObject

Generate the C description of the reference range.



998
999
1000
# File 'lib/HDLRuby/hruby_rcsim.rb', line 998

def to_rcsim
    return nil
end

#to_refObject

Converts to a new reference.



3554
3555
3556
# File 'lib/HDLRuby/hruby_high.rb', line 3554

def to_ref
    return RefThis.new
end