|
OpenASIP 2.2
|
#include <HDLGenerator.hh>


Public Member Functions | |
| Variable (std::string name, int width=1) | |
| Variable (std::string name, std::string width) | |
| Width | width () final |
| void | declare (std::ostream &stream, Language lang, int level) |
| std::string | vhdlRange () |
| std::string | verilogRange () |
| virtual std::string | vhdlTypeDeclaration () |
| std::string | verilogTypeDeclaration () |
| bool | isVector () |
| WireType | wireType () |
Public Member Functions inherited from HDLGenerator::Generatable | |
| Generatable (std::string name) | |
| virtual | ~Generatable ()=default |
| virtual void | build () |
| virtual void | reads (const std::string &var) |
| virtual void | reads (const LHSValue &var) |
| virtual void | writes (const std::string &var) |
| virtual Register & | getRegister (const std::string &var) |
| virtual bool | hasOption (const std::string &var) |
| virtual bool | isRegister (const std::string &name) |
| virtual bool | isVariable (const std::string &name) |
| virtual bool | isConstant (const std::string &name) |
| virtual Width | width (const std::string &name) |
| int | integerWidth (const std::string &name) |
| virtual WireType | wireType (const std::string &name) |
| virtual WireType | wireType () const |
| virtual void | hdl (std::ostream &stream, Language lang, int indent) |
| virtual void | hdl (std::ostream &stream, Language lang) |
| virtual void | implementAll (std::ostream &stream, Language lang) |
| virtual void | implementAll (std::ostream &stream, Language lang, int indent) |
| template<typename Func > | |
| void | forAll (Func func) |
| template<typename Type , typename Func > | |
| void | forAll (Func func) |
| template<class Type > | |
| bool | parentIs () |
| template<class Type > | |
| Type * | parentType () |
| void | pushComponent (std::shared_ptr< Generatable > c) |
| template<class Component > | |
| void | addComponent (Component c) |
| const std::string & | name () const noexcept |
| void | setParent (Generatable *parent) noexcept |
| Generatable * | parent () const noexcept |
Private Attributes | |
| std::string | strWidth_ |
| int | width_ |
| WireType | wireType_ |
Definition at line 414 of file HDLGenerator.hh.
|
inline |
Definition at line 416 of file HDLGenerator.hh.
|
inline |
Definition at line 419 of file HDLGenerator.hh.
|
inline |
Definition at line 425 of file HDLGenerator.hh.
References StringTools::indent(), HDLGenerator::Generatable::name(), HDLGenerator::Verilog, verilogTypeDeclaration(), HDLGenerator::VHDL, and vhdlTypeDeclaration().

|
inline |
Definition at line 466 of file HDLGenerator.hh.
References HDLGenerator::Vector, width_, and wireType_.
Referenced by verilogTypeDeclaration(), HDLGenerator::SignedVariable::verilogTypeDeclaration(), and HDLGenerator::LogicVariable::vhdlTypeDeclaration().
|
inline |
Definition at line 446 of file HDLGenerator.hh.
References strWidth_, width(), and width_.
Referenced by verilogTypeDeclaration(), and HDLGenerator::SignedVariable::verilogTypeDeclaration().

|
inline |
Definition at line 458 of file HDLGenerator.hh.
References isVector(), and verilogRange().
Referenced by declare().

|
inline |
Definition at line 438 of file HDLGenerator.hh.
References strWidth_, width(), and width_.
Referenced by HDLGenerator::LogicVariable::vhdlTypeDeclaration(), HDLGenerator::UnsignedVariable::vhdlTypeDeclaration(), and HDLGenerator::SignedVariable::vhdlTypeDeclaration().

|
inlinevirtual |
Reimplemented in HDLGenerator::LogicVariable, HDLGenerator::UnsignedVariable, and HDLGenerator::SignedVariable.
Definition at line 454 of file HDLGenerator.hh.
Referenced by declare().
|
inlinefinalvirtual |
Reimplemented from HDLGenerator::Generatable.
Definition at line 423 of file HDLGenerator.hh.
References strWidth_, and width_.
Referenced by verilogRange(), and vhdlRange().
|
inline |
Definition at line 470 of file HDLGenerator.hh.
References wireType_.
|
private |
Definition at line 475 of file HDLGenerator.hh.
Referenced by verilogRange(), vhdlRange(), and width().
|
private |
Definition at line 476 of file HDLGenerator.hh.
Referenced by isVector(), verilogRange(), vhdlRange(), and width().
|
private |
Definition at line 477 of file HDLGenerator.hh.
Referenced by isVector(), and wireType().