Class: ClassHDL::BlockCASEX
- Defined in:
- lib/tdl/class_hdl/hdl_block_ifelse.rb
Instance Attribute Summary
Attributes inherited from BlockIF
#cond, #opertor_chains, #slaver
Instance Method Summary collapse
Methods inherited from BlockIF
Constructor Details
This class inherits a constructor from ClassHDL::BlockIF
Instance Method Details
#instance(as_type = :cond) ⇒ Object
104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 |
# File 'lib/tdl/class_hdl/hdl_block_ifelse.rb', line 104 def instance(as_type= :cond) if cond.is_a? ClassHDL::OpertorChain head_str = "casex(#{cond.instance(:cond)}) " else head_str = "casex(#{cond.to_s}) " end sub_str = [] opertor_chains.each do |oc| unless oc.is_a? BlockIF unless oc.slaver sub_str.push " #{oc.instance(as_type)};" end else sub_str.push( oc.instance(as_type).gsub(/^./){ |m| " #{m}"} ) end end return "#{head_str}\n#{sub_str.join("\n")}\nendcase" end |