cint_op_entry.h (3943B)
1 /* 2 * 3 * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 4 * 5 * Copyright 2007-2019 Broadcom Inc. All rights reserved. 6 * 7 * File: cint_op_entry.h 8 * Purpose: CINT operator entries 9 */ 10 11 #ifndef CINT_OPERATOR_LIST_ENTRY 12 #error CINT_OPERATOR_LIST_ENTRY needs definition 13 #endif 14 15 CINT_OPERATOR_LIST_ENTRY(">>", RightShift, CINT_OPERATOR_FLAGS_IBINARY) 16 CINT_OPERATOR_LIST_ENTRY("<<", LeftShift, CINT_OPERATOR_FLAGS_IBINARY) 17 CINT_OPERATOR_LIST_ENTRY("++", Increment, CINT_OPERATOR_FLAGS_PBINARY | CINT_OPERATOR_F_OPTIONAL) 18 CINT_OPERATOR_LIST_ENTRY("--", Decrement, CINT_OPERATOR_FLAGS_PBINARY | CINT_OPERATOR_F_OPTIONAL) 19 CINT_OPERATOR_LIST_ENTRY("&&", LogicalAnd, CINT_OPERATOR_F_ACCEPT_ALL) 20 CINT_OPERATOR_LIST_ENTRY("||", LogicalOr, CINT_OPERATOR_F_ACCEPT_ALL) 21 CINT_OPERATOR_LIST_ENTRY("<=", LessThanOrEqual, CINT_OPERATOR_FLAGS_PBINARY | CINT_OPERATOR_F_LOGICAL) 22 CINT_OPERATOR_LIST_ENTRY(">=", GreaterThanOrEqual, CINT_OPERATOR_FLAGS_PBINARY | CINT_OPERATOR_F_LOGICAL) 23 CINT_OPERATOR_LIST_ENTRY("==", Equal, CINT_OPERATOR_FLAGS_PBINARY | CINT_OPERATOR_F_LOGICAL) 24 CINT_OPERATOR_LIST_ENTRY("!=", NotEqual, CINT_OPERATOR_FLAGS_PBINARY | CINT_OPERATOR_F_LOGICAL) 25 CINT_OPERATOR_LIST_ENTRY("{", OpenBrace,0) 26 CINT_OPERATOR_LIST_ENTRY("}", CloseBrace,0) 27 CINT_OPERATOR_LIST_ENTRY("=", Assign, CINT_OPERATOR_FLAGS_BINARY | CINT_OPERATOR_F_ACCEPT_ALL) 28 CINT_OPERATOR_LIST_ENTRY("[", OpenBracket, CINT_OPERATOR_FLAGS_BINARY | CINT_OPERATOR_F_ACCEPT_INTEGRAL | CINT_OPERATOR_F_ACCEPT_POINTER) 29 CINT_OPERATOR_LIST_ENTRY("&", BitwiseAnd, CINT_OPERATOR_FLAGS_IBINARY) 30 CINT_OPERATOR_LIST_ENTRY("!", Not, CINT_OPERATOR_FLAGS_PUNARY | CINT_OPERATOR_F_LOGICAL) 31 CINT_OPERATOR_LIST_ENTRY("~", Tilde, CINT_OPERATOR_FLAGS_IUNARY) 32 CINT_OPERATOR_LIST_ENTRY("-", Subtract, CINT_OPERATOR_FLAGS_PBINARY) 33 CINT_OPERATOR_LIST_ENTRY("+", Add, CINT_OPERATOR_FLAGS_PBINARY) 34 CINT_OPERATOR_LIST_ENTRY("*", Multiply, CINT_OPERATOR_FLAGS_ABINARY) 35 CINT_OPERATOR_LIST_ENTRY("/", Divide, CINT_OPERATOR_FLAGS_ABINARY) 36 CINT_OPERATOR_LIST_ENTRY("%", Mod, CINT_OPERATOR_FLAGS_IBINARY) 37 CINT_OPERATOR_LIST_ENTRY("<", LessThan, CINT_OPERATOR_FLAGS_PBINARY | CINT_OPERATOR_F_LOGICAL) 38 CINT_OPERATOR_LIST_ENTRY(">", GreaterThan, CINT_OPERATOR_FLAGS_PBINARY | CINT_OPERATOR_F_LOGICAL) 39 CINT_OPERATOR_LIST_ENTRY("^", BitwiseXor, CINT_OPERATOR_FLAGS_IBINARY) 40 CINT_OPERATOR_LIST_ENTRY("|", BitwiseOr, CINT_OPERATOR_FLAGS_IBINARY) 41 CINT_OPERATOR_LIST_ENTRY("?", Question, CINT_OPERATOR_F_LEFT | CINT_OPERATOR_F_ACCEPT_ALL) 42 CINT_OPERATOR_LIST_ENTRY("&", AddressOf, CINT_OPERATOR_FLAGS_UNARY | CINT_OPERATOR_F_ACCEPT_ALL) 43 CINT_OPERATOR_LIST_ENTRY("*", Dereference, CINT_OPERATOR_FLAGS_UNARY | CINT_OPERATOR_F_ACCEPT_POINTER) 44 CINT_OPERATOR_LIST_ENTRY("-", Negative, CINT_OPERATOR_FLAGS_IUNARY) 45 CINT_OPERATOR_LIST_ENTRY("+", Positive, CINT_OPERATOR_FLAGS_AUNARY) 46 CINT_OPERATOR_LIST_ENTRY("sizeof", Sizeof, CINT_OPERATOR_FLAGS_UNARY | CINT_OPERATOR_F_ACCEPT_ALL) 47 CINT_OPERATOR_LIST_ENTRY(".", Dot, CINT_OPERATOR_F_LEFT | CINT_OPERATOR_F_ACCEPT_ALL) 48 CINT_OPERATOR_LIST_ENTRY("->", Arrow, CINT_OPERATOR_F_LEFT | CINT_OPERATOR_F_ACCEPT_POINTER) 49 CINT_OPERATOR_LIST_ENTRY("typecast", Typecast, CINT_OPERATOR_F_RIGHT | CINT_OPERATOR_F_ACCEPT_ALL) 50 51 #undef CINT_OPERATOR_LIST_ENTRY