95 lines
1.8 KiB
C++
95 lines
1.8 KiB
C++
// Copyright (c) 1993-1999 Microsoft Corporation
|
|
|
|
#ifndef __OPERATOR_HXX__
|
|
#define __OPERATOR_HXX__
|
|
//
|
|
// operator identifier definitions.
|
|
//
|
|
|
|
typedef enum _operators
|
|
{
|
|
OP_START
|
|
,OP_ILLEGAL = OP_START
|
|
|
|
,OP_UNARY_START
|
|
|
|
,OP_UNARY_ARITHMETIC_START = OP_UNARY_START
|
|
,OP_UNARY_PLUS = OP_UNARY_ARITHMETIC_START
|
|
,OP_UNARY_MINUS
|
|
,OP_UNARY_ARITHMETIC_END
|
|
|
|
,OP_UNARY_LOGICAL_START = OP_UNARY_ARITHMETIC_END
|
|
,OP_UNARY_NOT = OP_UNARY_LOGICAL_START
|
|
,OP_UNARY_COMPLEMENT
|
|
,OP_UNARY_LOGICAL_END
|
|
|
|
,OP_UNARY_INDIRECTION = OP_UNARY_LOGICAL_END
|
|
,OP_UNARY_CAST
|
|
,OP_UNARY_AND
|
|
,OP_UNARY_SIZEOF
|
|
,OP_UNARY_ALIGNOF
|
|
,OP_PRE_INCR
|
|
,OP_PRE_DECR
|
|
,OP_POST_INCR
|
|
,OP_POST_DECR
|
|
|
|
,OP_UNARY_END
|
|
|
|
,OP_BINARY_START = OP_UNARY_END
|
|
|
|
,OP_BINARY_ARITHMETIC_START = OP_BINARY_START
|
|
,OP_PLUS = OP_BINARY_ARITHMETIC_START
|
|
,OP_MINUS
|
|
,OP_STAR
|
|
,OP_SLASH
|
|
,OP_MOD
|
|
,OP_BINARY_ARITHMETIC_END
|
|
|
|
,OP_BINARY_SHIFT_START = OP_BINARY_ARITHMETIC_END
|
|
,OP_LEFT_SHIFT = OP_BINARY_SHIFT_START
|
|
,OP_RIGHT_SHIFT
|
|
,OP_BINARY_SHIFT_END
|
|
|
|
,OP_BINARY_RELATIONAL_START = OP_BINARY_SHIFT_END
|
|
,OP_LESS = OP_BINARY_RELATIONAL_START
|
|
,OP_LESS_EQUAL
|
|
,OP_GREATER_EQUAL
|
|
,OP_GREATER
|
|
,OP_EQUAL
|
|
,OP_NOT_EQUAL
|
|
,OP_BINARY_RELATIONAL_END
|
|
|
|
,OP_BINARY_BITWISE_START = OP_BINARY_RELATIONAL_END
|
|
,OP_AND = OP_BINARY_BITWISE_START
|
|
,OP_OR
|
|
,OP_XOR
|
|
,OP_BINARY_BITWISE_END
|
|
|
|
,OP_BINARY_LOGICAL_START = OP_BINARY_BITWISE_END
|
|
,OP_LOGICAL_AND = OP_BINARY_LOGICAL_START
|
|
,OP_LOGICAL_OR
|
|
,OP_BINARY_LOGICAL_END
|
|
|
|
,OP_BINARY_TERNARY_START = OP_BINARY_LOGICAL_END
|
|
,OP_QM = OP_BINARY_TERNARY_START
|
|
,OP_COLON
|
|
,OP_BINARY_TERNARY_END
|
|
|
|
,OP_BINARY_END = OP_BINARY_TERNARY_END
|
|
|
|
,OP_INTERNAL_START = OP_BINARY_END
|
|
,OP_FUNCTION
|
|
,OP_PARAM
|
|
|
|
,OP_POINTSTO
|
|
,OP_DOT
|
|
,OP_INDEX
|
|
,OP_COMMA
|
|
,OP_STMT
|
|
,OP_ASSIGN
|
|
|
|
,OP_END
|
|
} OPERATOR;
|
|
|
|
#endif // __OPERATOR_HXX__
|