hdlConvertorAst.to.systemc package

Submodules

hdlConvertorAst.to.systemc.expr module

class hdlConvertorAst.to.systemc.expr.ToSystemcExpr(out_stream)[source]

Bases: ToHdlCommon

GENERIC_BIN_OPS = {HdlOpType.ADD: ' + ', HdlOpType.AND: ' & ', HdlOpType.AND_ASSIGN: ' &= ', HdlOpType.ASSIGN: ' = ', HdlOpType.DIV: ' / ', HdlOpType.DIV_ASSIGN: ' /= ', HdlOpType.DOT: '.', HdlOpType.DOUBLE_COLON: '::', HdlOpType.EQ: ' == ', HdlOpType.GE: ' >= ', HdlOpType.GT: ' > ', HdlOpType.LE: ' <= ', HdlOpType.LT: ' < ', HdlOpType.MINUS_ASSIGN: ' -= ', HdlOpType.MOD: ' % ', HdlOpType.MOD_ASSIGN: ' %= ', HdlOpType.MUL: ' * ', HdlOpType.MUL_ASSIGN: ' *= ', HdlOpType.NE: ' != ', HdlOpType.OR: ' | ', HdlOpType.OR_ASSIGN: ' |= ', HdlOpType.PLUS_ASSIGN: ' += ', HdlOpType.POW: ' ** ', HdlOpType.SHIFT_LEFT_ASSIGN: ' <<= ', HdlOpType.SHIFT_RIGHT_ASSIGN: ' >>= ', HdlOpType.SLL: ' << ', HdlOpType.SRL: ' >> ', HdlOpType.SUB: ' - ', HdlOpType.XOR: ' ^ ', HdlOpType.XOR_ASSIGN: ' ^= '}
GENERIC_UNARY_OPS = {HdlOpType.DECR_PRE: '--', HdlOpType.INCR_PRE: '++', HdlOpType.MINUS_UNARY: '-', HdlOpType.NEG: '~', HdlOpType.NEG_LOG: '!', HdlOpType.PLUS_UNARY: '+'}
GENERIC_UNARY_OPS_POSTFIX = {HdlOpType.DECR_POST: '--', HdlOpType.INCR_POST: '++'}
OP_PRECEDENCE = {HdlOpType.ADD: (6, ASSOCIATIVITY.L_TO_R), HdlOpType.AND: (11, ASSOCIATIVITY.L_TO_R), HdlOpType.AND_ASSIGN: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.AND_LOG: (14, ASSOCIATIVITY.L_TO_R), HdlOpType.ARITH_SHIFT_LEFT_ASSIGN: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.ARITH_SHIFT_RIGHT_ASSIGN: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.ARROW: (2, ASSOCIATIVITY.L_TO_R), HdlOpType.ASSIGN: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.CALL: (2, ASSOCIATIVITY.L_TO_R), HdlOpType.DECR_POST: (2, ASSOCIATIVITY.L_TO_R), HdlOpType.DECR_PRE: (3, ASSOCIATIVITY.R_TO_L), HdlOpType.DIV: (5, ASSOCIATIVITY.L_TO_R), HdlOpType.DIV_ASSIGN: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.DOT: (2, ASSOCIATIVITY.L_TO_R), HdlOpType.DOUBLE_COLON: (1, ASSOCIATIVITY.L_TO_R), HdlOpType.EQ: (10, ASSOCIATIVITY.L_TO_R), HdlOpType.GE: (9, ASSOCIATIVITY.L_TO_R), HdlOpType.GT: (9, ASSOCIATIVITY.L_TO_R), HdlOpType.INCR_POST: (2, ASSOCIATIVITY.L_TO_R), HdlOpType.INCR_PRE: (3, ASSOCIATIVITY.R_TO_L), HdlOpType.INDEX: (3, ASSOCIATIVITY.L_TO_R), HdlOpType.LE: (9, ASSOCIATIVITY.L_TO_R), HdlOpType.LT: (9, ASSOCIATIVITY.L_TO_R), HdlOpType.MINUS_ASSIGN: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.MINUS_UNARY: (3, ASSOCIATIVITY.R_TO_L), HdlOpType.MOD: (5, ASSOCIATIVITY.L_TO_R), HdlOpType.MOD_ASSIGN: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.MUL: (5, ASSOCIATIVITY.L_TO_R), HdlOpType.MUL_ASSIGN: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.NE: (10, ASSOCIATIVITY.L_TO_R), HdlOpType.NEG: (3, ASSOCIATIVITY.R_TO_L), HdlOpType.NEG_LOG: (3, ASSOCIATIVITY.R_TO_L), HdlOpType.OR: (13, ASSOCIATIVITY.L_TO_R), HdlOpType.OR_ASSIGN: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.OR_LOG: (15, ASSOCIATIVITY.L_TO_R), HdlOpType.PARAMETRIZATION: (2, ASSOCIATIVITY.L_TO_R), HdlOpType.PLUS_ASSIGN: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.PLUS_UNARY: (3, ASSOCIATIVITY.R_TO_L), HdlOpType.REFERENCE: (3, ASSOCIATIVITY.R_TO_L), HdlOpType.SHIFT_LEFT_ASSIGN: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.SHIFT_RIGHT_ASSIGN: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.SLL: (7, ASSOCIATIVITY.L_TO_R), HdlOpType.SRL: (7, ASSOCIATIVITY.L_TO_R), HdlOpType.SUB: (6, ASSOCIATIVITY.L_TO_R), HdlOpType.TERNARY: (16, ASSOCIATIVITY.R_TO_L), HdlOpType.TYPE_OF: (2, ASSOCIATIVITY.L_TO_R), HdlOpType.XOR: (12, ASSOCIATIVITY.L_TO_R), HdlOpType.XOR_ASSIGN: (16, ASSOCIATIVITY.R_TO_L)}
visit_HdlOp(op)[source]
visit_HdlValueInt(o)[source]
visit_iHdlExpr(o)[source]

hdlConvertorAst.to.systemc.keywords module

hdlConvertorAst.to.systemc.stm module

class hdlConvertorAst.to.systemc.stm.ToSystemcStm(out_stream)[source]

Bases: ToSystemcExpr

visit_HdlStmAssign(o)[source]
Returns:

True if requires ;n after end

visit_HdlStmBlock(o)[source]
visit_HdlStmBreak(o)[source]
visit_HdlStmCase(o)[source]
Returns:

True if requires ;n after end

visit_HdlStmContinue(o)[source]
visit_HdlStmIf(o)[source]
visit_HdlStmProcess(o)[source]
visit_HdlStmReturn(o)[source]
visit_HdlStmThrow(o)[source]
visit_iHdlStatement(o)[source]
visit_iHdlStatement_in_statement(stm)[source]