susumu.yata
null+****@clear*****
Mon Feb 9 14:48:59 JST 2015
susumu.yata 2015-02-09 14:48:59 +0900 (Mon, 09 Feb 2015) New Revision: a85e9c0ad82e412278272029d835151747b9111f https://github.com/groonga/grnxx/commit/a85e9c0ad82e412278272029d835151747b9111f Message: Put expression operator type constants in the C global namespace. (#144) Modified files: benchmark/benchmark_filter_and.cpp benchmark/benchmark_filter_less.cpp benchmark/benchmark_filter_or.cpp benchmark/benchmark_filter_reference.cpp include/grnxx/constants.h include/grnxx/expression.hpp lib/grnxx/impl/expression.cpp test/test_expression.cpp test/test_issue_62.cpp test/test_pipeline.cpp Modified: benchmark/benchmark_filter_and.cpp (+7 -7) =================================================================== --- benchmark/benchmark_filter_and.cpp 2015-02-09 14:34:18 +0900 (1b214ea) +++ benchmark/benchmark_filter_and.cpp 2015-02-09 14:48:59 +0900 (f22ac22) @@ -66,11 +66,11 @@ void benchmark_grnxx(const grnxx::Table *table, grnxx::OperatorType logical_operator_type, grnxx::Int upper_limit) { switch (logical_operator_type) { - case grnxx::LOGICAL_AND_OPERATOR: { + case GRNXX_LOGICAL_AND: { std::cout << "LOGICAL_AND: "; break; } - case grnxx::BITWISE_AND_OPERATOR: { + case GRNXX_BITWISE_AND: { std::cout << "BITWISE_AND: "; break; } @@ -89,13 +89,13 @@ void benchmark_grnxx(const grnxx::Table *table, auto expression_builder = grnxx::ExpressionBuilder::create(table); expression_builder->push_column("A"); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::LESS_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); expression_builder->push_column("B"); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::LESS_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); expression_builder->push_column("C"); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::LESS_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); expression_builder->push_operator(logical_operator_type); expression_builder->push_operator(logical_operator_type); auto expression = expression_builder->release(); @@ -138,8 +138,8 @@ void benchmark_grnxx() { col_c->set(row_id, c[i]); } - benchmark_grnxx(table, grnxx::LOGICAL_AND_OPERATOR); - benchmark_grnxx(table, grnxx::BITWISE_AND_OPERATOR); + benchmark_grnxx(table, GRNXX_LOGICAL_AND); + benchmark_grnxx(table, GRNXX_BITWISE_AND); } void benchmark_native_batch(grnxx::Int upper_limit) { Modified: benchmark/benchmark_filter_less.cpp (+1 -1) =================================================================== --- benchmark/benchmark_filter_less.cpp 2015-02-09 14:34:18 +0900 (64117fb) +++ benchmark/benchmark_filter_less.cpp 2015-02-09 14:48:59 +0900 (71daed8) @@ -69,7 +69,7 @@ void benchmark_grnxx(const grnxx::Table *table, auto expression_builder = grnxx::ExpressionBuilder::create(table); expression_builder->push_column("A"); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::LESS_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); auto expression = expression_builder->release(); pipeline_builder->push_filter(std::move(expression)); auto pipeline = pipeline_builder->release(); Modified: benchmark/benchmark_filter_or.cpp (+13 -13) =================================================================== --- benchmark/benchmark_filter_or.cpp 2015-02-09 14:34:18 +0900 (e9b74c1) +++ benchmark/benchmark_filter_or.cpp 2015-02-09 14:48:59 +0900 (6641326) @@ -79,16 +79,16 @@ void benchmark_grnxx_not_and(const grnxx::Table *table, auto expression_builder = grnxx::ExpressionBuilder::create(table); expression_builder->push_column("A"); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::GREATER_EQUAL_OPERATOR); + expression_builder->push_operator(GRNXX_GREATER_EQUAL); expression_builder->push_column("B"); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::GREATER_EQUAL_OPERATOR); + expression_builder->push_operator(GRNXX_GREATER_EQUAL); expression_builder->push_column("C"); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::GREATER_EQUAL_OPERATOR); - expression_builder->push_operator(grnxx::LOGICAL_AND_OPERATOR); - expression_builder->push_operator(grnxx::LOGICAL_AND_OPERATOR); - expression_builder->push_operator(grnxx::LOGICAL_NOT_OPERATOR); + expression_builder->push_operator(GRNXX_GREATER_EQUAL); + expression_builder->push_operator(GRNXX_LOGICAL_AND); + expression_builder->push_operator(GRNXX_LOGICAL_AND); + expression_builder->push_operator(GRNXX_LOGICAL_NOT); auto expression = expression_builder->release(); pipeline_builder->push_filter(std::move(expression)); auto pipeline = pipeline_builder->release(); @@ -117,11 +117,11 @@ void benchmark_grnxx(const grnxx::Table *table, grnxx::OperatorType logical_operator_type, grnxx::Int upper_limit) { switch (logical_operator_type) { - case grnxx::LOGICAL_OR_OPERATOR: { + case GRNXX_LOGICAL_OR: { std::cout << "LOGICAL_OR: "; break; } - case grnxx::BITWISE_OR_OPERATOR: { + case GRNXX_BITWISE_OR: { std::cout << "BITWISE_OR: "; break; } @@ -140,13 +140,13 @@ void benchmark_grnxx(const grnxx::Table *table, auto expression_builder = grnxx::ExpressionBuilder::create(table); expression_builder->push_column("A"); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::LESS_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); expression_builder->push_column("B"); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::LESS_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); expression_builder->push_column("C"); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::LESS_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); expression_builder->push_operator(logical_operator_type); expression_builder->push_operator(logical_operator_type); auto expression = expression_builder->release(); @@ -189,8 +189,8 @@ void benchmark_grnxx() { col_c->set(row_id, c[i]); } - benchmark_grnxx(table, grnxx::LOGICAL_OR_OPERATOR); - benchmark_grnxx(table, grnxx::BITWISE_OR_OPERATOR); + benchmark_grnxx(table, GRNXX_LOGICAL_OR); + benchmark_grnxx(table, GRNXX_BITWISE_OR); benchmark_grnxx_not_and(table); } Modified: benchmark/benchmark_filter_reference.cpp (+19 -19) =================================================================== --- benchmark/benchmark_filter_reference.cpp 2015-02-09 14:34:18 +0900 (76d8d28) +++ benchmark/benchmark_filter_reference.cpp 2015-02-09 14:48:59 +0900 (3fbc2e0) @@ -111,7 +111,7 @@ void benchmark_grnxx(grnxx::Table *table, expression_builder->push_column(column_names[j]); expression_builder->end_subexpression(); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::LESS_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); } for (size_t j = 1; j < column_names.size(); ++j) { expression_builder->push_operator(logical_operator_type); @@ -145,7 +145,7 @@ void benchmark_grnxx(grnxx::Table *table, for (size_t j = 0; j < column_names.size(); ++j) { expression_builder->push_column(column_names[j]); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::LESS_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); } for (size_t j = 1; j < column_names.size(); ++j) { expression_builder->push_operator(logical_operator_type); @@ -173,19 +173,19 @@ void benchmark_grnxx(grnxx::Table *table, grnxx::OperatorType logical_operator_type, const char *column_names) { switch (logical_operator_type) { - case grnxx::LOGICAL_AND_OPERATOR: { + case GRNXX_LOGICAL_AND: { std::cout << "LOGICAL_AND: "; break; } - case grnxx::LOGICAL_OR_OPERATOR: { + case GRNXX_LOGICAL_OR: { std::cout << "LOGICAL_OR: "; break; } - case grnxx::BITWISE_AND_OPERATOR: { + case GRNXX_BITWISE_AND: { std::cout << "BITWISE_AND: "; break; } - case grnxx::BITWISE_OR_OPERATOR: { + case GRNXX_BITWISE_OR: { std::cout << "BITWISE_OR: "; break; } @@ -236,12 +236,12 @@ void benchmark_grnxx_not_and(grnxx::Table *table, expression_builder->push_column(column_names[j]); expression_builder->end_subexpression(); expression_builder->push_constant(upper_limit); - expression_builder->push_operator(grnxx::GREATER_EQUAL_OPERATOR); + expression_builder->push_operator(GRNXX_GREATER_EQUAL); } for (size_t j = 1; j < column_names.size(); ++j) { - expression_builder->push_operator(grnxx::LOGICAL_AND_OPERATOR); + expression_builder->push_operator(GRNXX_LOGICAL_AND); } - expression_builder->push_operator(grnxx::LOGICAL_NOT_OPERATOR); + expression_builder->push_operator(GRNXX_LOGICAL_NOT); auto expression = expression_builder->release(); pipeline_builder->push_filter(std::move(expression)); auto pipeline = pipeline_builder->release(); @@ -275,16 +275,16 @@ void benchmark_grnxx_not_and(grnxx::Table *table, const char *column_names) { } void benchmark_grnxx(grnxx::Table *table) { - benchmark_grnxx(table, grnxx::LOGICAL_AND_OPERATOR, "A"); - benchmark_grnxx(table, grnxx::LOGICAL_AND_OPERATOR, "A,B"); - benchmark_grnxx(table, grnxx::LOGICAL_AND_OPERATOR, "A,B,C"); - benchmark_grnxx(table, grnxx::LOGICAL_OR_OPERATOR, "A,B"); - benchmark_grnxx(table, grnxx::LOGICAL_OR_OPERATOR, "A,B,C"); - - benchmark_grnxx(table, grnxx::BITWISE_AND_OPERATOR, "A,B"); - benchmark_grnxx(table, grnxx::BITWISE_AND_OPERATOR, "A,B,C"); - benchmark_grnxx(table, grnxx::BITWISE_OR_OPERATOR, "A,B"); - benchmark_grnxx(table, grnxx::BITWISE_OR_OPERATOR, "A,B,C"); + benchmark_grnxx(table, GRNXX_LOGICAL_AND, "A"); + benchmark_grnxx(table, GRNXX_LOGICAL_AND, "A,B"); + benchmark_grnxx(table, GRNXX_LOGICAL_AND, "A,B,C"); + benchmark_grnxx(table, GRNXX_LOGICAL_OR, "A,B"); + benchmark_grnxx(table, GRNXX_LOGICAL_OR, "A,B,C"); + + benchmark_grnxx(table, GRNXX_BITWISE_AND, "A,B"); + benchmark_grnxx(table, GRNXX_BITWISE_AND, "A,B,C"); + benchmark_grnxx(table, GRNXX_BITWISE_OR, "A,B"); + benchmark_grnxx(table, GRNXX_BITWISE_OR, "A,B,C"); benchmark_grnxx_not_and(table, "A,B"); benchmark_grnxx_not_and(table, "A,B,C"); Modified: include/grnxx/constants.h (+56 -0) =================================================================== --- include/grnxx/constants.h 2015-02-09 14:34:18 +0900 (62db278) +++ include/grnxx/constants.h 2015-02-09 14:48:59 +0900 (c056390) @@ -45,6 +45,62 @@ typedef enum { } grnxx_index_type; typedef enum { + // -- Unary operators -- + + GRNXX_LOGICAL_NOT, // For Bool. + + GRNXX_BITWISE_NOT, // For Bool, Int. + + GRNXX_POSITIVE, // For Int, Float. + GRNXX_NEGATIVE, // For Int, Float. + + // Typecast operators. +// GRNXX_TO_BOOL, + GRNXX_TO_INT, // For Float. + GRNXX_TO_FLOAT, // For Int. +// GRNXX_TO_GEO_POINT, +// GRNXX_TO_TEXT, + + // -- Binary operators -- + + // Logical operators. + GRNXX_LOGICAL_AND, // For Bool. + GRNXX_LOGICAL_OR, // For Bool. + + // Equality operators. + GRNXX_EQUAL, // For any types. + GRNXX_NOT_EQUAL, // For any types. + + // Comparison operators. + GRNXX_LESS, // Int, Float, Text. + GRNXX_LESS_EQUAL, // Int, Float, Text. + GRNXX_GREATER, // Int, Float, Text. + GRNXX_GREATER_EQUAL, // Int, Float, Text. + + // Bitwise operators. + GRNXX_BITWISE_AND, // For Bool, Int. + GRNXX_BITWISE_OR, // For Bool, Int. + GRNXX_BITWISE_XOR, // For Bool, Int. + + // Arithmetic operators. + GRNXX_PLUS, // For Int, Float. + GRNXX_MINUS, // For Int, Float. + GRNXX_MULTIPLICATION, // For Int, Float. + GRNXX_DIVISION, // For Int, Float. + GRNXX_MODULUS, // For Int. + + // Search operators. + GRNXX_STARTS_WITH, // For Text. + GRNXX_ENDS_WITH, // For Text. + GRNXX_CONTAINS, // For Text. + + // Vector operators. + GRNXX_SUBSCRIPT, + + // -- TODO: Ternary operators -- +} grnxx_operator_type; + +typedef enum { GRNXX_MERGER_AND, // For Logical. GRNXX_MERGER_OR, // For Logical. GRNXX_MERGER_XOR, // For Logical. Modified: include/grnxx/expression.hpp (+1 -56) =================================================================== --- include/grnxx/expression.hpp 2015-02-09 14:34:18 +0900 (bf37d06) +++ include/grnxx/expression.hpp 2015-02-09 14:48:59 +0900 (6839007) @@ -10,62 +10,7 @@ namespace grnxx { -enum OperatorType { - // -- Unary operators -- - - LOGICAL_NOT_OPERATOR, // For Bool. - - BITWISE_NOT_OPERATOR, // For Bool, Int. - - POSITIVE_OPERATOR, // For Int, Float. - NEGATIVE_OPERATOR, // For Int, Float. - - // Typecast operators. -// TO_BOOL_OPERATOR, - TO_INT_OPERATOR, // For Float. - TO_FLOAT_OPERATOR, // For Int. -// TO_GEO_POINT_OPERATOR, -// TO_TEXT_OPERATOR, - - // -- Binary operators -- - - // Logical operators. - LOGICAL_AND_OPERATOR, // For Bool. - LOGICAL_OR_OPERATOR, // For Bool. - - // Equality operators. - EQUAL_OPERATOR, // For any types. - NOT_EQUAL_OPERATOR, // For any types. - - // Comparison operators. - LESS_OPERATOR, // Int, Float, Text. - LESS_EQUAL_OPERATOR, // Int, Float, Text. - GREATER_OPERATOR, // Int, Float, Text. - GREATER_EQUAL_OPERATOR, // Int, Float, Text. - - // Bitwise operators. - BITWISE_AND_OPERATOR, // For Bool, Int. - BITWISE_OR_OPERATOR, // For Bool, Int. - BITWISE_XOR_OPERATOR, // For Bool, Int. - - // Arithmetic operators. - PLUS_OPERATOR, // For Int, Float. - MINUS_OPERATOR, // For Int, Float. - MULTIPLICATION_OPERATOR, // For Int, Float. - DIVISION_OPERATOR, // For Int, Float. - MODULUS_OPERATOR, // For Int. - - // TODO: The following operators can support Vector. - // Search operators. - STARTS_WITH_OPERATOR, // For Text. - ENDS_WITH_OPERATOR, // For Text. - CONTAINS_OPERATOR, // For Text. - - // Vector operators. - SUBSCRIPT_OPERATOR, - - // -- Ternary operators -- -}; +using OperatorType = grnxx_operator_type; struct ExpressionOptions { // Records are evaluated per block. Modified: lib/grnxx/impl/expression.cpp (+69 -69) =================================================================== --- lib/grnxx/impl/expression.cpp 2015-02-09 14:34:18 +0900 (60f933d) +++ lib/grnxx/impl/expression.cpp 2015-02-09 14:48:59 +0900 (6ed06fe) @@ -1802,34 +1802,34 @@ void ExpressionBuilder::push_operator(OperatorType operator_type) { subexpression_builder_->push_operator(operator_type); } else { switch (operator_type) { - case LOGICAL_NOT_OPERATOR: - case BITWISE_NOT_OPERATOR: - case POSITIVE_OPERATOR: - case NEGATIVE_OPERATOR: - case TO_INT_OPERATOR: - case TO_FLOAT_OPERATOR: { + case GRNXX_LOGICAL_NOT: + case GRNXX_BITWISE_NOT: + case GRNXX_POSITIVE: + case GRNXX_NEGATIVE: + case GRNXX_TO_INT: + case GRNXX_TO_FLOAT: { return push_unary_operator(operator_type); } - case LOGICAL_AND_OPERATOR: - case LOGICAL_OR_OPERATOR: - case EQUAL_OPERATOR: - case NOT_EQUAL_OPERATOR: - case LESS_OPERATOR: - case LESS_EQUAL_OPERATOR: - case GREATER_OPERATOR: - case GREATER_EQUAL_OPERATOR: - case BITWISE_AND_OPERATOR: - case BITWISE_OR_OPERATOR: - case BITWISE_XOR_OPERATOR: - case PLUS_OPERATOR: - case MINUS_OPERATOR: - case MULTIPLICATION_OPERATOR: - case DIVISION_OPERATOR: - case MODULUS_OPERATOR: - case STARTS_WITH_OPERATOR: - case ENDS_WITH_OPERATOR: - case CONTAINS_OPERATOR: - case SUBSCRIPT_OPERATOR: { + case GRNXX_LOGICAL_AND: + case GRNXX_LOGICAL_OR: + case GRNXX_EQUAL: + case GRNXX_NOT_EQUAL: + case GRNXX_LESS: + case GRNXX_LESS_EQUAL: + case GRNXX_GREATER: + case GRNXX_GREATER_EQUAL: + case GRNXX_BITWISE_AND: + case GRNXX_BITWISE_OR: + case GRNXX_BITWISE_XOR: + case GRNXX_PLUS: + case GRNXX_MINUS: + case GRNXX_MULTIPLICATION: + case GRNXX_DIVISION: + case GRNXX_MODULUS: + case GRNXX_STARTS_WITH: + case GRNXX_ENDS_WITH: + case GRNXX_CONTAINS: + case GRNXX_SUBSCRIPT: { return push_binary_operator(operator_type); } default: { @@ -2013,7 +2013,7 @@ Node *ExpressionBuilder::create_unary_node( OperatorType operator_type, std::unique_ptr<Node> &&arg) try { switch (operator_type) { - case LOGICAL_NOT_OPERATOR: { + case GRNXX_LOGICAL_NOT: { switch (arg->data_type()) { case GRNXX_BOOL: { return new LogicalNotNode(std::move(arg)); @@ -2023,7 +2023,7 @@ Node *ExpressionBuilder::create_unary_node( } } } - case BITWISE_NOT_OPERATOR: { + case GRNXX_BITWISE_NOT: { switch (arg->data_type()) { case GRNXX_BOOL: { return new BitwiseNotNode<Bool>(std::move(arg)); @@ -2036,7 +2036,7 @@ Node *ExpressionBuilder::create_unary_node( } } } - case POSITIVE_OPERATOR: { + case GRNXX_POSITIVE: { switch (arg->data_type()) { case GRNXX_INT: case GRNXX_FLOAT: { @@ -2048,7 +2048,7 @@ Node *ExpressionBuilder::create_unary_node( } } } - case NEGATIVE_OPERATOR: { + case GRNXX_NEGATIVE: { switch (arg->data_type()) { case GRNXX_INT: { return new NegativeNode<Int>(std::move(arg)); @@ -2061,7 +2061,7 @@ Node *ExpressionBuilder::create_unary_node( } } } - case TO_INT_OPERATOR: { + case GRNXX_TO_INT: { switch (arg->data_type()) { case GRNXX_FLOAT: { return new ToIntNode(std::move(arg)); @@ -2071,7 +2071,7 @@ Node *ExpressionBuilder::create_unary_node( } } } - case TO_FLOAT_OPERATOR: { + case GRNXX_TO_FLOAT: { switch (arg->data_type()) { case GRNXX_INT: { return new ToFloatNode(std::move(arg)); @@ -2094,22 +2094,22 @@ Node *ExpressionBuilder::create_binary_node( std::unique_ptr<Node> &&arg1, std::unique_ptr<Node> &&arg2) try { switch (operator_type) { - case LOGICAL_AND_OPERATOR: { + case GRNXX_LOGICAL_AND: { if ((arg1->data_type() != GRNXX_BOOL) || (arg2->data_type() != GRNXX_BOOL)) { throw "Invalid data type"; // TODO } return new LogicalAndNode(std::move(arg1), std::move(arg2)); } - case LOGICAL_OR_OPERATOR: { + case GRNXX_LOGICAL_OR: { if ((arg1->data_type() != GRNXX_BOOL) || (arg2->data_type() != GRNXX_BOOL)) { throw "Invalid data type"; // TODO } return new LogicalOrNode(std::move(arg1), std::move(arg2)); } - case EQUAL_OPERATOR: - case NOT_EQUAL_OPERATOR: { + case GRNXX_EQUAL: + case GRNXX_NOT_EQUAL: { switch (arg1->data_type()) { case GRNXX_BOOL: { return create_equality_test_node<Bool>( @@ -2156,10 +2156,10 @@ Node *ExpressionBuilder::create_binary_node( } } } - case LESS_OPERATOR: - case LESS_EQUAL_OPERATOR: - case GREATER_OPERATOR: - case GREATER_EQUAL_OPERATOR: { + case GRNXX_LESS: + case GRNXX_LESS_EQUAL: + case GRNXX_GREATER: + case GRNXX_GREATER_EQUAL: { switch (arg1->data_type()) { case GRNXX_INT: { return create_comparison_node<Int>( @@ -2178,9 +2178,9 @@ Node *ExpressionBuilder::create_binary_node( } } } - case BITWISE_AND_OPERATOR: - case BITWISE_OR_OPERATOR: - case BITWISE_XOR_OPERATOR: { + case GRNXX_BITWISE_AND: + case GRNXX_BITWISE_OR: + case GRNXX_BITWISE_XOR: { switch (arg1->data_type()) { case GRNXX_BOOL: { return create_bitwise_binary_node<Bool>( @@ -2195,11 +2195,11 @@ Node *ExpressionBuilder::create_binary_node( } } } - case PLUS_OPERATOR: - case MINUS_OPERATOR: - case MULTIPLICATION_OPERATOR: - case DIVISION_OPERATOR: - case MODULUS_OPERATOR: { + case GRNXX_PLUS: + case GRNXX_MINUS: + case GRNXX_MULTIPLICATION: + case GRNXX_DIVISION: + case GRNXX_MODULUS: { switch (arg1->data_type()) { case GRNXX_INT: { return create_arithmetic_node<Int>( @@ -2214,9 +2214,9 @@ Node *ExpressionBuilder::create_binary_node( } } } - case STARTS_WITH_OPERATOR: - case ENDS_WITH_OPERATOR: - case CONTAINS_OPERATOR: { + case GRNXX_STARTS_WITH: + case GRNXX_ENDS_WITH: + case GRNXX_CONTAINS: { switch (arg1->data_type()) { case GRNXX_TEXT: { return create_search_node<Text>( @@ -2228,7 +2228,7 @@ Node *ExpressionBuilder::create_binary_node( } } } - case SUBSCRIPT_OPERATOR: { + case GRNXX_SUBSCRIPT: { return create_subscript_node(std::move(arg1), std::move(arg2)); } default: { @@ -2249,10 +2249,10 @@ Node *ExpressionBuilder::create_equality_test_node( throw "Data type conflict"; // TODO } switch (operator_type) { - case EQUAL_OPERATOR: { + case GRNXX_EQUAL: { return new EqualNode<T>(std::move(arg1), std::move(arg2)); } - case NOT_EQUAL_OPERATOR: { + case GRNXX_NOT_EQUAL: { return new NotEqualNode<T>(std::move(arg1), std::move(arg2)); } default: { @@ -2270,16 +2270,16 @@ Node *ExpressionBuilder::create_comparison_node(OperatorType operator_type, throw "Data type conflict"; // TODO } switch (operator_type) { - case LESS_OPERATOR: { + case GRNXX_LESS: { return new LessNode<T>(std::move(arg1), std::move(arg2)); } - case LESS_EQUAL_OPERATOR: { + case GRNXX_LESS_EQUAL: { return new LessEqualNode<T>(std::move(arg1), std::move(arg2)); } - case GREATER_OPERATOR: { + case GRNXX_GREATER: { return new GreaterNode<T>(std::move(arg1), std::move(arg2)); } - case GREATER_EQUAL_OPERATOR: { + case GRNXX_GREATER_EQUAL: { return new GreaterEqualNode<T>(std::move(arg1), std::move(arg2)); } default: { @@ -2297,13 +2297,13 @@ Node *ExpressionBuilder::create_bitwise_binary_node( throw "Data type conflict"; // TODO } switch (operator_type) { - case BITWISE_AND_OPERATOR: { + case GRNXX_BITWISE_AND: { return new BitwiseAndNode<T>(std::move(arg1), std::move(arg2)); } - case BITWISE_OR_OPERATOR: { + case GRNXX_BITWISE_OR: { return new BitwiseOrNode<T>(std::move(arg1), std::move(arg2)); } - case BITWISE_XOR_OPERATOR: { + case GRNXX_BITWISE_XOR: { return new BitwiseXorNode<T>(std::move(arg1), std::move(arg2)); } default: { @@ -2321,19 +2321,19 @@ Node *ExpressionBuilder::create_arithmetic_node( throw "Data type conflict"; // TODO } switch (operator_type) { - case PLUS_OPERATOR: { + case GRNXX_PLUS: { return new PlusNode<T>(std::move(arg1), std::move(arg2)); } - case MINUS_OPERATOR: { + case GRNXX_MINUS: { return new MinusNode<T>(std::move(arg1), std::move(arg2)); } - case MULTIPLICATION_OPERATOR: { + case GRNXX_MULTIPLICATION: { return new MultiplicationNode<T>(std::move(arg1), std::move(arg2)); } - case DIVISION_OPERATOR: { + case GRNXX_DIVISION: { return new DivisionNode<T>(std::move(arg1), std::move(arg2)); } - case MODULUS_OPERATOR: { + case GRNXX_MODULUS: { return new ModulusNode<T>(std::move(arg1), std::move(arg2)); } default: { @@ -2350,13 +2350,13 @@ Node *ExpressionBuilder::create_search_node(OperatorType operator_type, throw "Data type conflict"; // TODO } switch (operator_type) { - case STARTS_WITH_OPERATOR: { + case GRNXX_STARTS_WITH: { return new StartsWithNode<T>(std::move(arg1), std::move(arg2)); } - case ENDS_WITH_OPERATOR: { + case GRNXX_ENDS_WITH: { return new EndsWithNode<T>(std::move(arg1), std::move(arg2)); } - case CONTAINS_OPERATOR: { + case GRNXX_CONTAINS: { return new ContainsNode<T>(std::move(arg1), std::move(arg2)); } default: { Modified: test/test_expression.cpp (+78 -78) =================================================================== --- test/test_expression.cpp 2015-02-09 14:34:18 +0900 (456f652) +++ test/test_expression.cpp 2015-02-09 14:48:59 +0900 (e2d3ed1) @@ -813,7 +813,7 @@ void test_logical_not() { // Test an expression (!Bool). builder->push_column("Bool"); - builder->push_operator(grnxx::LOGICAL_NOT_OPERATOR); + builder->push_operator(GRNXX_LOGICAL_NOT); auto expression = builder->release(); auto records = create_input_records(); @@ -843,7 +843,7 @@ void test_bitwise_not() { // Test an expression (~Bool). builder->push_column("Bool"); - builder->push_operator(grnxx::BITWISE_NOT_OPERATOR); + builder->push_operator(GRNXX_BITWISE_NOT); auto expression = builder->release(); auto records = create_input_records(); @@ -868,7 +868,7 @@ void test_bitwise_not() { // Test an expression (~Int). builder->push_column("Int"); - builder->push_operator(grnxx::BITWISE_NOT_OPERATOR); + builder->push_operator(GRNXX_BITWISE_NOT); expression = builder->release(); records = create_input_records(); @@ -888,7 +888,7 @@ void test_positive() { // Test an expression (+Int). builder->push_column("Int"); - builder->push_operator(grnxx::POSITIVE_OPERATOR); + builder->push_operator(GRNXX_POSITIVE); auto expression = builder->release(); auto records = create_input_records(); @@ -903,7 +903,7 @@ void test_positive() { // Test an expression (+Float). builder->push_column("Float"); - builder->push_operator(grnxx::POSITIVE_OPERATOR); + builder->push_operator(GRNXX_POSITIVE); expression = builder->release(); records = create_input_records(); @@ -930,7 +930,7 @@ void test_negative() { // Test an expression (-Int). builder->push_column("Int"); - builder->push_operator(grnxx::NEGATIVE_OPERATOR); + builder->push_operator(GRNXX_NEGATIVE); auto expression = builder->release(); auto records = create_input_records(); @@ -945,7 +945,7 @@ void test_negative() { // Test an expression (-Float). builder->push_column("Float"); - builder->push_operator(grnxx::NEGATIVE_OPERATOR); + builder->push_operator(GRNXX_NEGATIVE); expression = builder->release(); records = create_input_records(); @@ -972,7 +972,7 @@ void test_to_int() { // Test an expression (Int(Float)). builder->push_column("Float"); - builder->push_operator(grnxx::TO_INT_OPERATOR); + builder->push_operator(GRNXX_TO_INT); auto expression = builder->release(); auto records = create_input_records(); @@ -993,7 +993,7 @@ void test_to_float() { // Test an expression (Float(Int)). builder->push_column("Int"); - builder->push_operator(grnxx::TO_FLOAT_OPERATOR); + builder->push_operator(GRNXX_TO_FLOAT); auto expression = builder->release(); auto records = create_input_records(); @@ -1021,7 +1021,7 @@ void test_logical_and() { // Test an expression (Bool && Bool2). builder->push_column("Bool"); builder->push_column("Bool2"); - builder->push_operator(grnxx::LOGICAL_AND_OPERATOR); + builder->push_operator(GRNXX_LOGICAL_AND); auto expression = builder->release(); auto records = create_input_records(); @@ -1053,7 +1053,7 @@ void test_logical_or() { // Test an expression (Bool || Bool2). builder->push_column("Bool"); builder->push_column("Bool2"); - builder->push_operator(grnxx::LOGICAL_OR_OPERATOR); + builder->push_operator(GRNXX_LOGICAL_OR); auto expression = builder->release(); auto records = create_input_records(); @@ -1085,7 +1085,7 @@ void test_equal() { // Test an expression (Bool == Bool2). builder->push_column("Bool"); builder->push_column("Bool2"); - builder->push_operator(grnxx::EQUAL_OPERATOR); + builder->push_operator(GRNXX_EQUAL); auto expression = builder->release(); auto records = create_input_records(); @@ -1112,7 +1112,7 @@ void test_equal() { // Test an expression (Int == Int2). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::EQUAL_OPERATOR); + builder->push_operator(GRNXX_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1139,7 +1139,7 @@ void test_equal() { // Test an expression (Float == Float2). builder->push_column("Float"); builder->push_column("Float2"); - builder->push_operator(grnxx::EQUAL_OPERATOR); + builder->push_operator(GRNXX_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1166,7 +1166,7 @@ void test_equal() { // Test an expression (GeoPoint == GeoPoint2). builder->push_column("GeoPoint"); builder->push_column("GeoPoint2"); - builder->push_operator(grnxx::EQUAL_OPERATOR); + builder->push_operator(GRNXX_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1193,7 +1193,7 @@ void test_equal() { // Test an expression (Text == Text2). builder->push_column("Text"); builder->push_column("Text2"); - builder->push_operator(grnxx::EQUAL_OPERATOR); + builder->push_operator(GRNXX_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1220,7 +1220,7 @@ void test_equal() { // Test an expression (BoolVector == BoolVector2). builder->push_column("BoolVector"); builder->push_column("BoolVector2"); - builder->push_operator(grnxx::EQUAL_OPERATOR); + builder->push_operator(GRNXX_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1248,7 +1248,7 @@ void test_equal() { // Test an expression (IntVector == IntVector2). builder->push_column("IntVector"); builder->push_column("IntVector2"); - builder->push_operator(grnxx::EQUAL_OPERATOR); + builder->push_operator(GRNXX_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1275,7 +1275,7 @@ void test_equal() { // Test an expression (FloatVector == FloatVector2). builder->push_column("FloatVector"); builder->push_column("FloatVector2"); - builder->push_operator(grnxx::EQUAL_OPERATOR); + builder->push_operator(GRNXX_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1303,7 +1303,7 @@ void test_equal() { // Test an expression (GeoPointVector == GeoPointVector2). builder->push_column("GeoPointVector"); builder->push_column("GeoPointVector2"); - builder->push_operator(grnxx::EQUAL_OPERATOR); + builder->push_operator(GRNXX_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1331,7 +1331,7 @@ void test_equal() { // Test an expression (TextVector == TextVector2). builder->push_column("TextVector"); builder->push_column("TextVector2"); - builder->push_operator(grnxx::EQUAL_OPERATOR); + builder->push_operator(GRNXX_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1364,7 +1364,7 @@ void test_not_equal() { // Test an expression (Bool != Bool2). builder->push_column("Bool"); builder->push_column("Bool2"); - builder->push_operator(grnxx::NOT_EQUAL_OPERATOR); + builder->push_operator(GRNXX_NOT_EQUAL); auto expression = builder->release(); auto records = create_input_records(); @@ -1391,7 +1391,7 @@ void test_not_equal() { // Test an expression (Int != Int2). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::NOT_EQUAL_OPERATOR); + builder->push_operator(GRNXX_NOT_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1418,7 +1418,7 @@ void test_not_equal() { // Test an expression (Float != Float2). builder->push_column("Float"); builder->push_column("Float2"); - builder->push_operator(grnxx::NOT_EQUAL_OPERATOR); + builder->push_operator(GRNXX_NOT_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1445,7 +1445,7 @@ void test_not_equal() { // Test an expression (GeoPoint != GeoPoint2). builder->push_column("GeoPoint"); builder->push_column("GeoPoint2"); - builder->push_operator(grnxx::NOT_EQUAL_OPERATOR); + builder->push_operator(GRNXX_NOT_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1472,7 +1472,7 @@ void test_not_equal() { // Test an expression (Text != Text2). builder->push_column("Text"); builder->push_column("Text2"); - builder->push_operator(grnxx::NOT_EQUAL_OPERATOR); + builder->push_operator(GRNXX_NOT_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1499,7 +1499,7 @@ void test_not_equal() { // Test an expression (BoolVector != BoolVector2). builder->push_column("BoolVector"); builder->push_column("BoolVector2"); - builder->push_operator(grnxx::NOT_EQUAL_OPERATOR); + builder->push_operator(GRNXX_NOT_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1527,7 +1527,7 @@ void test_not_equal() { // Test an expression (IntVector != IntVector2). builder->push_column("IntVector"); builder->push_column("IntVector2"); - builder->push_operator(grnxx::NOT_EQUAL_OPERATOR); + builder->push_operator(GRNXX_NOT_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1554,7 +1554,7 @@ void test_not_equal() { // Test an expression (FloatVector != FloatVector2). builder->push_column("FloatVector"); builder->push_column("FloatVector2"); - builder->push_operator(grnxx::NOT_EQUAL_OPERATOR); + builder->push_operator(GRNXX_NOT_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1582,7 +1582,7 @@ void test_not_equal() { // Test an expression (GeoPointVector != GeoPointVector2). builder->push_column("GeoPointVector"); builder->push_column("GeoPointVector2"); - builder->push_operator(grnxx::NOT_EQUAL_OPERATOR); + builder->push_operator(GRNXX_NOT_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1610,7 +1610,7 @@ void test_not_equal() { // Test an expression (TextVector != TextVector2). builder->push_column("TextVector"); builder->push_column("TextVector2"); - builder->push_operator(grnxx::NOT_EQUAL_OPERATOR); + builder->push_operator(GRNXX_NOT_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1643,7 +1643,7 @@ void test_less() { // Test an expression (Int < Int2). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::LESS_OPERATOR); + builder->push_operator(GRNXX_LESS); auto expression = builder->release(); auto records = create_input_records(); @@ -1670,7 +1670,7 @@ void test_less() { // Test an expression (Float < Float2). builder->push_column("Float"); builder->push_column("Float2"); - builder->push_operator(grnxx::LESS_OPERATOR); + builder->push_operator(GRNXX_LESS); expression = builder->release(); records = create_input_records(); @@ -1697,7 +1697,7 @@ void test_less() { // Test an expression (Text < Text2). builder->push_column("Text"); builder->push_column("Text2"); - builder->push_operator(grnxx::LESS_OPERATOR); + builder->push_operator(GRNXX_LESS); expression = builder->release(); records = create_input_records(); @@ -1729,7 +1729,7 @@ void test_less_equal() { // Test an expression (Int <= Int2). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::LESS_EQUAL_OPERATOR); + builder->push_operator(GRNXX_LESS_EQUAL); auto expression = builder->release(); auto records = create_input_records(); @@ -1756,7 +1756,7 @@ void test_less_equal() { // Test an expression (Float <= Float2). builder->push_column("Float"); builder->push_column("Float2"); - builder->push_operator(grnxx::LESS_EQUAL_OPERATOR); + builder->push_operator(GRNXX_LESS_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1783,7 +1783,7 @@ void test_less_equal() { // Test an expression (Text <= Text2). builder->push_column("Text"); builder->push_column("Text2"); - builder->push_operator(grnxx::LESS_EQUAL_OPERATOR); + builder->push_operator(GRNXX_LESS_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1815,7 +1815,7 @@ void test_greater() { // Test an expression (Int > Int2). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::GREATER_OPERATOR); + builder->push_operator(GRNXX_GREATER); auto expression = builder->release(); auto records = create_input_records(); @@ -1842,7 +1842,7 @@ void test_greater() { // Test an expression (Float > Float2). builder->push_column("Float"); builder->push_column("Float2"); - builder->push_operator(grnxx::GREATER_OPERATOR); + builder->push_operator(GRNXX_GREATER); expression = builder->release(); records = create_input_records(); @@ -1869,7 +1869,7 @@ void test_greater() { // Test an expression (Text > Text2). builder->push_column("Text"); builder->push_column("Text2"); - builder->push_operator(grnxx::GREATER_OPERATOR); + builder->push_operator(GRNXX_GREATER); expression = builder->release(); records = create_input_records(); @@ -1901,7 +1901,7 @@ void test_greater_equal() { // Test an expression (Int >= Int2). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::GREATER_EQUAL_OPERATOR); + builder->push_operator(GRNXX_GREATER_EQUAL); auto expression = builder->release(); auto records = create_input_records(); @@ -1928,7 +1928,7 @@ void test_greater_equal() { // Test an expression (Float >= Float2). builder->push_column("Float"); builder->push_column("Float2"); - builder->push_operator(grnxx::GREATER_EQUAL_OPERATOR); + builder->push_operator(GRNXX_GREATER_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1955,7 +1955,7 @@ void test_greater_equal() { // Test an expression (Text >= Text2). builder->push_column("Text"); builder->push_column("Text2"); - builder->push_operator(grnxx::GREATER_EQUAL_OPERATOR); + builder->push_operator(GRNXX_GREATER_EQUAL); expression = builder->release(); records = create_input_records(); @@ -1987,7 +1987,7 @@ void test_bitwise_and() { // Test an expression (Bool & Bool2). builder->push_column("Bool"); builder->push_column("Bool2"); - builder->push_operator(grnxx::BITWISE_AND_OPERATOR); + builder->push_operator(GRNXX_BITWISE_AND); auto expression = builder->release(); auto records = create_input_records(); @@ -2014,7 +2014,7 @@ void test_bitwise_and() { // Test an expression (Int & Int2). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::BITWISE_AND_OPERATOR); + builder->push_operator(GRNXX_BITWISE_AND); expression = builder->release(); records = create_input_records(); @@ -2036,7 +2036,7 @@ void test_bitwise_or() { // Test an expression (Bool | Bool2). builder->push_column("Bool"); builder->push_column("Bool2"); - builder->push_operator(grnxx::BITWISE_OR_OPERATOR); + builder->push_operator(GRNXX_BITWISE_OR); auto expression = builder->release(); auto records = create_input_records(); @@ -2063,7 +2063,7 @@ void test_bitwise_or() { // Test an expression (Int | Int2). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::BITWISE_OR_OPERATOR); + builder->push_operator(GRNXX_BITWISE_OR); expression = builder->release(); records = create_input_records(); @@ -2085,7 +2085,7 @@ void test_bitwise_xor() { // Test an expression (Bool ^ Bool2). builder->push_column("Bool"); builder->push_column("Bool2"); - builder->push_operator(grnxx::BITWISE_XOR_OPERATOR); + builder->push_operator(GRNXX_BITWISE_XOR); auto expression = builder->release(); auto records = create_input_records(); @@ -2112,7 +2112,7 @@ void test_bitwise_xor() { // Test an expression (Int ^ Int2). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::BITWISE_XOR_OPERATOR); + builder->push_operator(GRNXX_BITWISE_XOR); expression = builder->release(); records = create_input_records(); @@ -2134,7 +2134,7 @@ void test_plus() { // Test an expression (Int + Int2). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::PLUS_OPERATOR); + builder->push_operator(GRNXX_PLUS); auto expression = builder->release(); auto records = create_input_records(); @@ -2151,7 +2151,7 @@ void test_plus() { // Test an expression (Float + Float2). builder->push_column("Float"); builder->push_column("Float2"); - builder->push_operator(grnxx::PLUS_OPERATOR); + builder->push_operator(GRNXX_PLUS); expression = builder->release(); records = create_input_records(); @@ -2181,7 +2181,7 @@ void test_minus() { // Test an expression (Int - Int2). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::MINUS_OPERATOR); + builder->push_operator(GRNXX_MINUS); auto expression = builder->release(); auto records = create_input_records(); @@ -2198,7 +2198,7 @@ void test_minus() { // Test an expression (Float - Float2). builder->push_column("Float"); builder->push_column("Float2"); - builder->push_operator(grnxx::MINUS_OPERATOR); + builder->push_operator(GRNXX_MINUS); expression = builder->release(); records = create_input_records(); @@ -2229,7 +2229,7 @@ void test_multiplication() { // Test an expression (Int * Int2). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::MULTIPLICATION_OPERATOR); + builder->push_operator(GRNXX_MULTIPLICATION); auto expression = builder->release(); auto records = create_input_records(); @@ -2246,7 +2246,7 @@ void test_multiplication() { // Test an expression (Float * Float2). builder->push_column("Float"); builder->push_column("Float2"); - builder->push_operator(grnxx::MULTIPLICATION_OPERATOR); + builder->push_operator(GRNXX_MULTIPLICATION); expression = builder->release(); records = create_input_records(); @@ -2277,7 +2277,7 @@ void test_division() { // Division by zero does not fail. builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::DIVISION_OPERATOR); + builder->push_operator(GRNXX_DIVISION); auto expression = builder->release(); auto records = create_input_records(); @@ -2294,7 +2294,7 @@ void test_division() { // Test an expression (Float / Float2). builder->push_column("Float"); builder->push_column("Float2"); - builder->push_operator(grnxx::DIVISION_OPERATOR); + builder->push_operator(GRNXX_DIVISION); expression = builder->release(); records = create_input_records(); @@ -2325,7 +2325,7 @@ void test_modulus() { // An error occurs because of division by zero. builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::MODULUS_OPERATOR); + builder->push_operator(GRNXX_MODULUS); auto expression = builder->release(); auto records = create_input_records(); @@ -2342,7 +2342,7 @@ void test_modulus() { // Test an expression (Float % Float2). builder->push_column("Float"); builder->push_column("Float2"); - builder->push_operator(grnxx::MODULUS_OPERATOR); + builder->push_operator(GRNXX_MODULUS); expression = builder->release(); records = create_input_records(); @@ -2372,7 +2372,7 @@ void test_starts_with() { // Test an expression (Text.starts_with(Text2)). builder->push_column("Text"); builder->push_column("Text2"); - builder->push_operator(grnxx::STARTS_WITH_OPERATOR); + builder->push_operator(GRNXX_STARTS_WITH); auto expression = builder->release(); auto records = create_input_records(); @@ -2404,7 +2404,7 @@ void test_ends_with() { // Test an expression (Text.ends_with(Text2)). builder->push_column("Text"); builder->push_column("Text2"); - builder->push_operator(grnxx::ENDS_WITH_OPERATOR); + builder->push_operator(GRNXX_ENDS_WITH); auto expression = builder->release(); auto records = create_input_records(); @@ -2436,7 +2436,7 @@ void test_contains() { // Test an expression (Text.contains(Text2)). builder->push_column("Text"); builder->push_column("Text2"); - builder->push_operator(grnxx::CONTAINS_OPERATOR); + builder->push_operator(GRNXX_CONTAINS); auto expression = builder->release(); auto records = create_input_records(); @@ -2468,7 +2468,7 @@ void test_subscript() { // Test an expression (BoolVector[Int]). builder->push_column("BoolVector"); builder->push_column("Int"); - builder->push_operator(grnxx::SUBSCRIPT_OPERATOR); + builder->push_operator(GRNXX_SUBSCRIPT); auto expression = builder->release(); auto records = create_input_records(); @@ -2498,7 +2498,7 @@ void test_subscript() { // Test an expression (IntVector[Int]). builder->push_column("IntVector"); builder->push_column("Int"); - builder->push_operator(grnxx::SUBSCRIPT_OPERATOR); + builder->push_operator(GRNXX_SUBSCRIPT); expression = builder->release(); records = create_input_records(); @@ -2516,7 +2516,7 @@ void test_subscript() { // Test an expression (FloatVector[Int]). builder->push_column("FloatVector"); builder->push_column("Int"); - builder->push_operator(grnxx::SUBSCRIPT_OPERATOR); + builder->push_operator(GRNXX_SUBSCRIPT); expression = builder->release(); records = create_input_records(); @@ -2543,7 +2543,7 @@ void test_subscript() { // Test an expression (GeoPointVector[Int]). builder->push_column("GeoPointVector"); builder->push_column("Int"); - builder->push_operator(grnxx::SUBSCRIPT_OPERATOR); + builder->push_operator(GRNXX_SUBSCRIPT); expression = builder->release(); records = create_input_records(); @@ -2561,7 +2561,7 @@ void test_subscript() { // Test an expression (TextVector[Int]). builder->push_column("TextVector"); builder->push_column("Int"); - builder->push_operator(grnxx::SUBSCRIPT_OPERATOR); + builder->push_operator(GRNXX_SUBSCRIPT); expression = builder->release(); records = create_input_records(); @@ -2755,9 +2755,9 @@ void test_sequential_filter() { // Test an expression ((Int + Int2) < 100). builder->push_column("Int"); builder->push_column("Int2"); - builder->push_operator(grnxx::PLUS_OPERATOR); + builder->push_operator(GRNXX_PLUS); builder->push_constant(grnxx::Int(100)); - builder->push_operator(grnxx::LESS_OPERATOR); + builder->push_operator(GRNXX_LESS); auto expression = builder->release(); auto cursor = test.table->create_cursor(); @@ -2792,9 +2792,9 @@ void test_sequential_adjust() { // Test an expression (Float(Int) + Float). builder->push_column("Int"); - builder->push_operator(grnxx::TO_FLOAT_OPERATOR); + builder->push_operator(GRNXX_TO_FLOAT); builder->push_column("Float"); - builder->push_operator(grnxx::PLUS_OPERATOR); + builder->push_operator(GRNXX_PLUS); auto expression = builder->release(); auto cursor = test.table->create_cursor(); @@ -2828,9 +2828,9 @@ void test_sequential_evaluate() { builder->push_column("Int"); builder->push_column("Float"); builder->push_constant(grnxx::Float(100.0)); - builder->push_operator(grnxx::MULTIPLICATION_OPERATOR); - builder->push_operator(grnxx::TO_INT_OPERATOR); - builder->push_operator(grnxx::PLUS_OPERATOR); + builder->push_operator(GRNXX_MULTIPLICATION); + builder->push_operator(GRNXX_TO_INT); + builder->push_operator(GRNXX_PLUS); auto expression = builder->release(); auto cursor = test.table->create_cursor(); @@ -2866,9 +2866,9 @@ void test_partial_filter() { // Test an expression ((Float * Float2) > 0.25). builder->push_column("Float"); builder->push_column("Float2"); - builder->push_operator(grnxx::MULTIPLICATION_OPERATOR); + builder->push_operator(GRNXX_MULTIPLICATION); builder->push_constant(grnxx::Float(0.25)); - builder->push_operator(grnxx::GREATER_OPERATOR); + builder->push_operator(GRNXX_GREATER); auto expression = builder->release(); // Read all records. @@ -2899,7 +2899,7 @@ void test_error() { try { builder->push_column("Int"); builder->push_column("Text"); - builder->push_operator(grnxx::MULTIPLICATION_OPERATOR); + builder->push_operator(GRNXX_MULTIPLICATION); assert(false); } catch (...) { // OK. @@ -2911,7 +2911,7 @@ void test_error() { // Test a valid expression (Int + Int). builder->push_column("Int"); builder->push_column("Int"); - builder->push_operator(grnxx::PLUS_OPERATOR); + builder->push_operator(GRNXX_PLUS); } int main() { Modified: test/test_issue_62.cpp (+1 -1) =================================================================== --- test/test_issue_62.cpp 2015-02-09 14:34:18 +0900 (d8c0c88) +++ test/test_issue_62.cpp 2015-02-09 14:48:59 +0900 (fa2eec2) @@ -79,7 +79,7 @@ void test_scored_subexpression() { builder->begin_subexpression(); builder->push_score(); builder->push_constant(grnxx::Float(0.5)); - builder->push_operator(grnxx::GREATER_OPERATOR); + builder->push_operator(GRNXX_GREATER); builder->end_subexpression(); expression = builder->release(); Modified: test/test_pipeline.cpp (+9 -9) =================================================================== --- test/test_pipeline.cpp 2015-02-09 14:34:18 +0900 (dbc1465) +++ test/test_pipeline.cpp 2015-02-09 14:48:59 +0900 (9196390) @@ -129,12 +129,12 @@ void test_filter() { expression_builder->push_column("Bool"); expression_builder->push_column("Int"); expression_builder->push_constant(grnxx::Int(50)); - expression_builder->push_operator(grnxx::LESS_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); expression_builder->push_column("Float"); expression_builder->push_constant(grnxx::Float(0.5)); - expression_builder->push_operator(grnxx::LESS_OPERATOR); - expression_builder->push_operator(grnxx::LOGICAL_AND_OPERATOR); - expression_builder->push_operator(grnxx::LOGICAL_AND_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); + expression_builder->push_operator(GRNXX_LOGICAL_AND); + expression_builder->push_operator(GRNXX_LOGICAL_AND); auto expression = expression_builder->release(); pipeline_builder->push_filter(std::move(expression)); @@ -166,8 +166,8 @@ void test_filter() { expression_builder->push_column("Bool"); expression_builder->push_column("Int"); expression_builder->push_constant(grnxx::Int(50)); - expression_builder->push_operator(grnxx::LESS_OPERATOR); - expression_builder->push_operator(grnxx::LOGICAL_AND_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); + expression_builder->push_operator(GRNXX_LOGICAL_AND); expression = expression_builder->release(); pipeline_builder->push_filter(std::move(expression), FILTER_OFFSET, FILTER_LIMIT); @@ -212,7 +212,7 @@ void test_adjuster() { // Create an adjuster (Float * 100.0). expression_builder->push_column("Float"); expression_builder->push_constant(grnxx::Float(100.0)); - expression_builder->push_operator(grnxx::MULTIPLICATION_OPERATOR); + expression_builder->push_operator(GRNXX_MULTIPLICATION); expression = expression_builder->release(); pipeline_builder->push_adjuster(std::move(expression)); @@ -335,14 +335,14 @@ void test_merger() { // Create a filter (Int < 50). expression_builder->push_column("Int"); expression_builder->push_constant(grnxx::Int(50)); - expression_builder->push_operator(grnxx::LESS_OPERATOR); + expression_builder->push_operator(GRNXX_LESS); expression = expression_builder->release(); pipeline_builder->push_filter(std::move(expression)); // Create an adjuster (Float * 2.0). expression_builder->push_column("Float"); expression_builder->push_constant(grnxx::Float(2.0)); - expression_builder->push_operator(grnxx::MULTIPLICATION_OPERATOR); + expression_builder->push_operator(GRNXX_MULTIPLICATION); expression = expression_builder->release(); pipeline_builder->push_adjuster(std::move(expression)); -------------- next part -------------- HTML����������������������������...Download