X-Git-Url: http://nitlanguage.org diff --git a/src/parser/parser_nodes.nit b/src/parser/parser_nodes.nit index 219c396..1a37332 100644 --- a/src/parser/parser_nodes.nit +++ b/src/parser/parser_nodes.nit @@ -750,6 +750,21 @@ class TStarstareq super TokenOperator end +# The operator `|=` +class TPipeeq + super TokenOperator +end + +# The operator `^=` +class TCareteq + super TokenOperator +end + +# The operator `&=` +class TAmpeq + super TokenOperator +end + # The operator `<<=` class TLleq super TokenOperator @@ -800,11 +815,31 @@ class TSlash super TokenOperator end -# The operator `+% +# The operator `%` class TPercent super TokenOperator end +# The operator `|` +class TPipe + super TokenOperator +end + +# The operator `^` +class TCaret + super TokenOperator +end + +# The operator `&` +class TAmp + super TokenOperator +end + +# The operator `~` +class TTilde + super TokenOperator +end + # The operator `==` class TEq super TokenOperator @@ -1460,7 +1495,26 @@ end # A method name `%` class APercentMethid super AOperatorMethid +end +# A method name `|` +class APipeMethid + super AOperatorMethid +end + +# A method name `^` +class ACaretMethid + super AOperatorMethid +end + +# A method name `&` +class AAmpMethid + super AOperatorMethid +end + +# A method name `~` +class ATildeMethid + super AOperatorMethid end # A method name `==` @@ -2041,20 +2095,51 @@ class APercentExpr redef fun operator do return "%" end -# A unary minus expression. eg `-x` -class AUminusExpr +# A `|` expression +class APipeExpr + super ABinopExpr + redef fun operator do return "|" +end + +# A `^` expression +class ACaretExpr + super ABinopExpr + redef fun operator do return "^" +end + +# A `&` expression +class AAmpExpr + super ABinopExpr + redef fun operator do return "&" +end + +# A unary operation on a method +class AUnaryopExpr super ASendExpr - # The `-` symbol - var n_minus: TMinus is writable, noinit + # The operator + var n_op: Token is writable, noinit + + # The name of the operator (eg '+') + fun operator: String is abstract +end + +# A unary minus expression. eg `-x` +class AUminusExpr + super AUnaryopExpr + redef fun operator do return "-" end # A unary plus expression. eg `+x` class AUplusExpr - super ASendExpr + super AUnaryopExpr + redef fun operator do return "+" +end - # The `+` symbol - var n_plus: TPlus is writable, noinit +# A unary `~` expression +class AUtildeExpr + super AUnaryopExpr + redef fun operator do return "~" end # An explicit instantiation. eg `new T` @@ -2594,6 +2679,27 @@ class AStarstarAssignOp redef fun operator do return "**" end +# A `|=` assignment operation +class APipeAssignOp + super AAssignOp + + redef fun operator do return "|" +end + +# A `^=` assignment operation +class ACaretAssignOp + super AAssignOp + + redef fun operator do return "^" +end + +# A `&=` assignment operation +class AAmpAssignOp + super AAssignOp + + redef fun operator do return "&" +end + # A `<<=` assignment operation class ALlAssignOp super AAssignOp