Пример #1
0
def dump_to_p4_P4UnaryExpression(self, hlir):
    right = self.right.dump_to_p4(hlir)
    if type(right) is int:
        if self.op == "+": return right
        elif self.op == "-": return -right

    return p4_expression(left=None, op=self.op, right=right)
Пример #2
0
def dump_to_p4_P4UnaryExpression(self, hlir):
    right = self.right.dump_to_p4(hlir)
    if type(right) is int:
            if self.op == "+": return right
            elif self.op == "-": return -right

    return p4_expression(left = None, op = self.op, right = right)
Пример #3
0
def dump_to_p4_P4BinaryExpression(self, hlir):
    left = self.left.dump_to_p4(hlir)
    right = self.right.dump_to_p4(hlir)

    if type(left) is int and type(right) is int:
        if self.op == "+": return left + right
        elif self.op == "-": return left - right
        elif self.op == "*": return left * right

    return p4_expression(left=left, op=self.op, right=right)
Пример #4
0
def dump_to_p4_P4BinaryExpression(self, hlir):
    left = self.left.dump_to_p4(hlir)
    right = self.right.dump_to_p4(hlir)

    if type(left) is int and type(right) is int:
        if self.op == "+": return left + right
        elif self.op == "-": return left - right
        elif self.op == "*": return left * right

    return p4_expression(left = left, op = self.op, right = right)
Пример #5
0
def dump_to_p4_P4ValidExpression(self, hlir):
    right = self.header_ref.dump_to_p4(hlir)
    return p4_expression(left=None, op="valid", right=right)
Пример #6
0
def dump_to_p4_P4BoolUnaryExpression(self, hlir):
    right = self.right.dump_to_p4(hlir)
    return p4_expression(left=None, op=self.op, right=right)
Пример #7
0
def dump_to_p4_P4BoolBinaryExpression(self, hlir):
    left = self.left.dump_to_p4(hlir)
    right = self.right.dump_to_p4(hlir)
    return p4_expression(left=left, op=self.op, right=right)
Пример #8
0
def dump_to_p4_P4ValidExpression(self, hlir):
    right = self.header_ref.dump_to_p4(hlir)
    return p4_expression(left=None, op="valid", right=right)
Пример #9
0
def dump_to_p4_P4BoolUnaryExpression(self, hlir):
    right = self.right.dump_to_p4(hlir)
    return p4_expression(left=None, op=self.op, right=right)
Пример #10
0
def dump_to_p4_P4BoolBinaryExpression(self, hlir):
    left = self.left.dump_to_p4(hlir)
    right = self.right.dump_to_p4(hlir)
    return p4_expression(left=left, op=self.op, right=right)