OpenASIP  2.0
Public Member Functions | List of all members
HDLGenerator::BinaryOp Class Reference

#include <BinaryOps.hh>

Inheritance diagram for HDLGenerator::BinaryOp:
Inheritance graph
Collaboration diagram for HDLGenerator::BinaryOp:
Collaboration graph

Public Member Functions

 BinaryOp (const LHSValue &lhs, const LHSValue &rhs, std::string VHDLOperator, std::string VerilogOperator)
 
- Public Member Functions inherited from HDLGenerator::LHSValue
 LHSValue ()
 
void hdl (std::ostream &stream, Language lang, int level)
 
void hdl (std::ostream &stream, Language lang)
 
void writeSignals (std::unordered_set< std::string > &readList) const
 
std::string vhdl () const
 
std::string verilog () const
 
LHSValue operator|| (LHSValue rhs)
 
LHSValue operator| (LHSValue rhs)
 
LHSValue operator&& (LHSValue rhs)
 
LHSValue operator& (LHSValue rhs)
 
LHSValue operator^ (LHSValue rhs)
 
LHSValue operator! ()
 
LHSValue operator~ ()
 

Additional Inherited Members

- Protected Attributes inherited from HDLGenerator::LHSValue
std::unordered_set< std::string > readList_
 
std::string vhdl_
 
std::string verilog_
 

Detailed Description

Definition at line 37 of file BinaryOps.hh.

Constructor & Destructor Documentation

◆ BinaryOp()

HDLGenerator::BinaryOp::BinaryOp ( const LHSValue lhs,
const LHSValue rhs,
std::string  VHDLOperator,
std::string  VerilogOperator 
)
inline

Definition at line 39 of file BinaryOps.hh.

41  {
42  vhdl_ = "(" + lhs.vhdl() + " " + VHDLOperator
43  + " " + rhs.vhdl() + ")";
44  verilog_ = "(" + lhs.verilog() + " " + VerilogOperator + " "
45  + rhs.verilog() + ")";
46  lhs.writeSignals(readList_);
47  rhs.writeSignals(readList_);
48  }

References HDLGenerator::LHSValue::readList_, HDLGenerator::LHSValue::verilog(), HDLGenerator::LHSValue::verilog_, HDLGenerator::LHSValue::vhdl(), HDLGenerator::LHSValue::vhdl_, and HDLGenerator::LHSValue::writeSignals().

Here is the call graph for this function:

The documentation for this class was generated from the following file:
HDLGenerator::LHSValue::vhdl_
std::string vhdl_
Definition: LHSValue.hh:59
HDLGenerator::LHSValue::verilog_
std::string verilog_
Definition: LHSValue.hh:60
HDLGenerator::LHSValue::readList_
std::unordered_set< std::string > readList_
Definition: LHSValue.hh:58