protected function isOperator(Node $node)
{
switch ($node->getType()) {
case 'Expr_Assign':
return '=';
case 'Expr_AssignBitwiseAnd':
return '&=';
case 'Expr_AssignBitwiseOr':
return '|=';
case 'Expr_AssignBitwiseXor':
return '^=';
case 'Expr_AssignConcat':
return '.=';
case 'Expr_AssignDiv':
return '/=';
case 'Expr_AssignMinus':
return '-=';
case 'Expr_AssignMod':
return '%=';
case 'Expr_AssignMul':
return '*=';
case 'Expr_AssignPlus':
return '+=';
case 'Expr_AssignRef':
return '=&';
case 'Expr_AssignShiftLeft':
return '<<=';
case 'Expr_AssignShiftRight':
return '>>=';
case 'Expr_BitwiseAnd':
return '&';
case 'Expr_BitwiseNot':
return '~';
case 'Expr_BitwiseOr':
return '|';
case 'Expr_BitwiseXor':
return '^';
case 'Expr_BooleanAnd':
return '&&';
case 'Expr_BooleanNot':
return '!';
case 'Expr_BooleanOr':
return '||';
case 'Expr_Concat':
return '.';
case 'Expr_Div':
return '/';
case 'Expr_Equal':
return '==';
case 'Expr_Greater':
return '>';
case 'Expr_GreaterOrEqual':
return '>=';
case 'Expr_Identical':
return '===';
case 'Expr_LogicalAnd':
return 'and';
case 'Expr_LogicalOr':
return 'or';
case 'Expr_LogicalXor':
return 'xor';
case 'Expr_Minus':
return '-';
case 'Expr_Mod':
return '%';
case 'Expr_Mul':
return '*';
case 'Expr_NotEqual':
return '!=';
case 'Expr_NotIdentical':
return '!==';
case 'Expr_Plus':
return '+';
case 'Expr_PostDec':
return 'n--';
case 'Expr_PostInc':
return 'n++';
case 'Expr_PreDec':
return '--n';
case 'Expr_PreInc':
return '++n';
case 'Expr_ShiftLeft':
return '<<';
case 'Expr_ShiftRight':
return '>>';
case 'Expr_Smaller':
return '<';
case 'Expr_SmallerOrEqual':
return '<=';
case 'Expr_Ternary':
return '?';
case 'Expr_UnaryMinus':
return '-n';
case 'Expr_UnaryPlus':
return '+n';
}
return null;
}