Class: BlifUtils::AST::LogicGate
- Inherits:
-
Object
- Object
- BlifUtils::AST::LogicGate
- Defined in:
- lib/blifutils/ast.rb
Instance Attribute Summary collapse
-
#inputs ⇒ Object
readonly
Returns the value of attribute inputs.
-
#output ⇒ Object
readonly
Returns the value of attribute output.
-
#single_output_cover_list ⇒ Object
readonly
Returns the value of attribute single_output_cover_list.
Instance Method Summary collapse
-
#initialize(identifier_list, single_output_cover_list) ⇒ LogicGate
constructor
A new instance of LogicGate.
- #pretty_print(indent) ⇒ Object
Constructor Details
#initialize(identifier_list, single_output_cover_list) ⇒ LogicGate
Returns a new instance of LogicGate.
104 105 106 107 108 |
# File 'lib/blifutils/ast.rb', line 104 def initialize (identifier_list, single_output_cover_list) @inputs = identifier_list[0 ... -1] @output = identifier_list[-1] @single_output_cover_list = single_output_cover_list end |
Instance Attribute Details
#inputs ⇒ Object (readonly)
Returns the value of attribute inputs.
102 103 104 |
# File 'lib/blifutils/ast.rb', line 102 def inputs @inputs end |
#output ⇒ Object (readonly)
Returns the value of attribute output.
102 103 104 |
# File 'lib/blifutils/ast.rb', line 102 def output @output end |
#single_output_cover_list ⇒ Object (readonly)
Returns the value of attribute single_output_cover_list.
102 103 104 |
# File 'lib/blifutils/ast.rb', line 102 def single_output_cover_list @single_output_cover_list end |
Instance Method Details
#pretty_print(indent) ⇒ Object
110 111 112 113 114 115 116 117 118 119 |
# File 'lib/blifutils/ast.rb', line 110 def pretty_print (indent) str = ' '*indent + "Logic gate:\n" str += ' '*(indent+1) + "Inputs: #{@inputs.collect{|idf| "\"#{idf}\""}.join(', ')}\n" str += ' '*(indent+1) + "Output: \"#{@output}\"\n" str += ' '*(indent+1) + "Cover list:\n" @single_output_cover_list.each do |inputs_output| str += ' '*(indent+2) + "#{inputs_output[0].collect{|strbit| case strbit when 0 then '0' when 1 then '1' else '-' end}.join} | #{inputs_output[1]}\n" end return str end |