hdlConvertorAst.to package¶
This package contains the classes which do convert hdlConvertorAst.hdlAst to a target language (e.g. Verilog/SystemVerilog/VHDL)
- note:
The convertors in this package do not modify the AST itself, if the input comes from a different language. It may be required to translate the AST first using e.g.
hdlConvertorAst.translate.
Subpackages¶
- hdlConvertorAst.to.basic_hdl_sim_model package
- Submodules
- hdlConvertorAst.to.basic_hdl_sim_model.expr module
- hdlConvertorAst.to.basic_hdl_sim_model.keywords module
- hdlConvertorAst.to.basic_hdl_sim_model.stm module
ToBasicHdlSimModelStmToBasicHdlSimModelStm.visit_HdlStmAssign()ToBasicHdlSimModelStm.visit_HdlStmBlock()ToBasicHdlSimModelStm.visit_HdlStmIf()ToBasicHdlSimModelStm.visit_HdlStmNop()ToBasicHdlSimModelStm.visit_HdlStmProcess()ToBasicHdlSimModelStm.visit_HdlStmThrow()ToBasicHdlSimModelStm.visit_HdlStmWait()ToBasicHdlSimModelStm.visit_iHdlStatement_in_statement()
- hdlConvertorAst.to.basic_hdl_sim_model.utils module
- hdlConvertorAst.to.hwt package
- Submodules
- hdlConvertorAst.to.hwt.expr module
- hdlConvertorAst.to.hwt.keywords module
- hdlConvertorAst.to.hwt.stm module
ToHwtStmToHwtStm.visit_HdlStmAssign()ToHwtStm.visit_HdlStmBlock()ToHwtStm.visit_HdlStmBreak()ToHwtStm.visit_HdlStmCase()ToHwtStm.visit_HdlStmContinue()ToHwtStm.visit_HdlStmFor()ToHwtStm.visit_HdlStmIf()ToHwtStm.visit_HdlStmNop()ToHwtStm.visit_HdlStmProcess()ToHwtStm.visit_HdlStmThrow()ToHwtStm.visit_HdlStmWait()ToHwtStm.visit_HdlStmWhile()
- hdlConvertorAst.to.hwt.utils module
- hdlConvertorAst.to.systemc package
- Submodules
- hdlConvertorAst.to.systemc.expr module
- hdlConvertorAst.to.systemc.keywords module
- hdlConvertorAst.to.systemc.stm module
ToSystemcStmToSystemcStm.visit_HdlStmAssign()ToSystemcStm.visit_HdlStmBlock()ToSystemcStm.visit_HdlStmBreak()ToSystemcStm.visit_HdlStmCase()ToSystemcStm.visit_HdlStmContinue()ToSystemcStm.visit_HdlStmIf()ToSystemcStm.visit_HdlStmProcess()ToSystemcStm.visit_HdlStmReturn()ToSystemcStm.visit_HdlStmThrow()ToSystemcStm.visit_iHdlStatement()ToSystemcStm.visit_iHdlStatement_in_statement()
- hdlConvertorAst.to.verilog package
- Submodules
- hdlConvertorAst.to.verilog.constants module
- hdlConvertorAst.to.verilog.expr module
ToVerilog2005ExprToVerilog2005Expr.GENERIC_BIN_OPSToVerilog2005Expr.GENERIC_UNARY_OPSToVerilog2005Expr.GENERIC_UNARY_OPS_POSTFIXToVerilog2005Expr.OP_PRECEDENCEToVerilog2005Expr._visit_operand()ToVerilog2005Expr.visit_HdlOp()ToVerilog2005Expr.visit_HdlValueInt()ToVerilog2005Expr.visit_iHdlExpr()ToVerilog2005Expr.visit_type_array_part()ToVerilog2005Expr.visit_type_first_part()
pop_signed_flag()
- hdlConvertorAst.to.verilog.keywords module
- hdlConvertorAst.to.verilog.stm module
ToVerilog2005StmToVerilog2005Stm.ASSIGN_OPSToVerilog2005Stm.__init__()ToVerilog2005Stm.visit_HdlImport()ToVerilog2005Stm.visit_HdlStmAssign()ToVerilog2005Stm.visit_HdlStmBlock()ToVerilog2005Stm.visit_HdlStmBreak()ToVerilog2005Stm.visit_HdlStmCase()ToVerilog2005Stm.visit_HdlStmContinue()ToVerilog2005Stm.visit_HdlStmFor()ToVerilog2005Stm.visit_HdlStmForIn()ToVerilog2005Stm.visit_HdlStmIf()ToVerilog2005Stm.visit_HdlStmProcess()ToVerilog2005Stm.visit_HdlStmRepeat()ToVerilog2005Stm.visit_HdlStmReturn()ToVerilog2005Stm.visit_HdlStmThrow()ToVerilog2005Stm.visit_HdlStmWait()ToVerilog2005Stm.visit_HdlStmWhile()ToVerilog2005Stm.visit_hdlAttributes()ToVerilog2005Stm.visit_iHdlStatement()ToVerilog2005Stm.visit_iHdlStatement_in_statement()
- hdlConvertorAst.to.verilog.utils module
- hdlConvertorAst.to.verilog.verilog2005 module
ToVerilog2005ToVerilog2005.DIR2VToVerilog2005.__init__()ToVerilog2005.visit_HdlClassDef()ToVerilog2005.visit_HdlCompInst()ToVerilog2005.visit_HdlEnumDef()ToVerilog2005.visit_HdlFunctionDef()ToVerilog2005.visit_HdlIdDef()ToVerilog2005.visit_HdlModuleDec()ToVerilog2005.visit_HdlModuleDef()ToVerilog2005.visit_HdlPhysicalDef()ToVerilog2005.visit_direction()ToVerilog2005.visit_doc()ToVerilog2005.visit_generic_declr()ToVerilog2005.visit_map()ToVerilog2005.visit_map_item()ToVerilog2005.visit_port_declr()
- hdlConvertorAst.to.vhdl package
- Submodules
- hdlConvertorAst.to.vhdl.expr module
ToVhdl2008ExprToVhdl2008Expr.BITWISE_BIN_OPSToVhdl2008Expr.EQ_NEQ_OPSToVhdl2008Expr.GENERIC_BIN_OPSToVhdl2008Expr.GENERIC_UNARY_OPSToVhdl2008Expr.NUM_BASESToVhdl2008Expr.OP_PRECEDENCEToVhdl2008Expr._visit_operand()ToVhdl2008Expr._visit_operand_parentheses_extra_check()ToVhdl2008Expr.visit_HdlOp()ToVhdl2008Expr.visit_HdlValueInt()ToVhdl2008Expr.visit_iHdlExpr()ToVhdl2008Expr.visit_str()
- hdlConvertorAst.to.vhdl.keywords module
- hdlConvertorAst.to.vhdl.stm module
ToVhdl2008StmToVhdl2008Stm._write_begin()ToVhdl2008Stm.visit_HdlStmAssign()ToVhdl2008Stm.visit_HdlStmBlock()ToVhdl2008Stm.visit_HdlStmBreak()ToVhdl2008Stm.visit_HdlStmCase()ToVhdl2008Stm.visit_HdlStmContinue()ToVhdl2008Stm.visit_HdlStmFor()ToVhdl2008Stm.visit_HdlStmForIn()ToVhdl2008Stm.visit_HdlStmIf()ToVhdl2008Stm.visit_HdlStmNop()ToVhdl2008Stm.visit_HdlStmProcess()ToVhdl2008Stm.visit_HdlStmReturn()ToVhdl2008Stm.visit_HdlStmThrow()ToVhdl2008Stm.visit_HdlStmWait()ToVhdl2008Stm.visit_HdlStmWhile()ToVhdl2008Stm.visit_assert()ToVhdl2008Stm.visit_report()
- hdlConvertorAst.to.vhdl.vhdl2008 module
ToVhdl2008ToVhdl2008.DIR2VToVhdl2008.__init__()ToVhdl2008._visit_HdlStmExitOrNext()ToVhdl2008.visit_HdlClassDef()ToVhdl2008.visit_HdlCompInst()ToVhdl2008.visit_HdlEnumDef()ToVhdl2008.visit_HdlFunctionDef()ToVhdl2008.visit_HdlIdDef()ToVhdl2008.visit_HdlImport()ToVhdl2008.visit_HdlLibrary()ToVhdl2008.visit_HdlModuleDec()ToVhdl2008.visit_HdlModuleDef()ToVhdl2008.visit_HdlOp()ToVhdl2008.visit_HdlPhysicalDef()ToVhdl2008.visit_HdlStmExit()ToVhdl2008.visit_HdlStmNext()ToVhdl2008.visit_HdlValueIdspace()ToVhdl2008.visit_body_items()ToVhdl2008.visit_component()ToVhdl2008.visit_direction()ToVhdl2008.visit_doc()ToVhdl2008.visit_main_obj()ToVhdl2008.visit_map()ToVhdl2008.visit_map_item()ToVhdl2008.visit_param_or_port_declr()ToVhdl2008.visit_type()
Submodules¶
hdlConvertorAst.to.common module¶
- class hdlConvertorAst.to.common.ASSOCIATIVITY(*values)[source]¶
Bases:
Enum- L_TO_R = 'L_TO_R'¶
- NONE = 'NONE'¶
- R_TO_L = 'R_TO_L'¶
- class hdlConvertorAst.to.common.ToHdlCommon(out_stream)[source]¶
Bases:
HdlAstVisitor- ALL_UNARY_OPS = {HdlOpType.AND_UNARY, HdlOpType.MINUS_UNARY, HdlOpType.NAND_UNARY, HdlOpType.NOR_UNARY, HdlOpType.OR_UNARY, HdlOpType.PLUS_UNARY, HdlOpType.XNOR_UNARY, HdlOpType.XOR_UNARY}¶
- GENERIC_BIN_OPS = {HdlOpType.ADD: ' + ', HdlOpType.DOT: '.', HdlOpType.GE: ' >= ', HdlOpType.GT: ' > ', HdlOpType.LE: ' <= ', HdlOpType.LT: ' < ', HdlOpType.MUL: ' * ', HdlOpType.SUB: ' - '}¶
- GENERIC_UNARY_OPS = {HdlOpType.MINUS_UNARY: '-', HdlOpType.PLUS_UNARY: '+'}¶
- GENERIC_UNARY_OPS_POSTFIX = {}¶
- INDENT_STEP = ' '¶
hdlConvertorAst.to.hdlUtils module¶
- class hdlConvertorAst.to.hdlUtils.AutoIndentingStream(stream, indent_step)[source]¶
Bases:
object
- class hdlConvertorAst.to.hdlUtils.Indent(autoIndentStream)[source]¶
Bases:
objectindentation context
- class hdlConvertorAst.to.hdlUtils.UnIndent(autoIndentStream)[source]¶
Bases:
objectunindentation context
hdlConvertorAst.to.hdl_ast_modifier module¶
- class hdlConvertorAst.to.hdl_ast_modifier.HdlAstModifier[source]¶
Bases:
HdlAstVisitorA visitor which can be used to traverse and modyfy AST (Abstract Syntax Tree) made of objects from hdlConvertorAst.hdlAst module. Each visit function has to return the object which replaces current object It should return the same object if no change is required.
hdlConvertorAst.to.hdl_ast_visitor module¶
hdlConvertorAst.to.json module¶
- class hdlConvertorAst.to.json.ToJson[source]¶
Bases:
HdlAstVisitor