summaryrefslogtreecommitdiff
path: root/connectivity
diff options
context:
space:
mode:
authorNorbert Thiebaud <nthiebaud@gmail.com>2012-06-02 19:06:50 -0500
committerNorbert Thiebaud <nthiebaud@gmail.com>2012-06-02 19:06:50 -0500
commit2fbb371fa11c7c54749136a8e2cd8279b8123d0b (patch)
treefa5507dc276807eb096f6873673378616776195c /connectivity
parenta7d4a73b5e8aa8cdaf8f9bb7ab834adaca1e6d66 (diff)
cosmetic clean-up
Change-Id: I78ecfec2c03df2d040671722c255af2c63f81991
Diffstat (limited to 'connectivity')
-rwxr-xr-xconnectivity/source/parse/sqlbison.y210
-rwxr-xr-xconnectivity/source/parse/sqlflex.l1112
2 files changed, 661 insertions, 661 deletions
diff --git a/connectivity/source/parse/sqlbison.y b/connectivity/source/parse/sqlbison.y
index bf576519e85e..87b3f89046c8 100755
--- a/connectivity/source/parse/sqlbison.y
+++ b/connectivity/source/parse/sqlbison.y
@@ -193,25 +193,25 @@ using namespace connectivity;
%token <pParseNode> SQL_TOKEN_CALL SQL_TOKEN_D SQL_TOKEN_FN SQL_TOKEN_T SQL_TOKEN_TS SQL_TOKEN_OJ
/* string functions */
%token <pParseNode> SQL_TOKEN_ASCII SQL_TOKEN_BIT_LENGTH SQL_TOKEN_CHAR SQL_TOKEN_CHAR_LENGTH SQL_TOKEN_SQL_TOKEN_INTNUM
-%token <pParseNode> SQL_TOKEN_CONCAT
-%token <pParseNode> SQL_TOKEN_DIFFERENCE SQL_TOKEN_INSERT SQL_TOKEN_LCASE SQL_TOKEN_LEFT SQL_TOKEN_LENGTH SQL_TOKEN_LOCATE
-%token <pParseNode> SQL_TOKEN_LOCATE_2 SQL_TOKEN_LTRIM SQL_TOKEN_POSITION SQL_TOKEN_REPEAT SQL_TOKEN_REPLACE
-%token <pParseNode> SQL_TOKEN_RIGHT SQL_TOKEN_RTRIM SQL_TOKEN_SOUNDEX SQL_TOKEN_SPACE SQL_TOKEN_SUBSTRING SQL_TOKEN_UCASE
+%token <pParseNode> SQL_TOKEN_CONCAT
+%token <pParseNode> SQL_TOKEN_DIFFERENCE SQL_TOKEN_INSERT SQL_TOKEN_LCASE SQL_TOKEN_LEFT SQL_TOKEN_LENGTH SQL_TOKEN_LOCATE
+%token <pParseNode> SQL_TOKEN_LOCATE_2 SQL_TOKEN_LTRIM SQL_TOKEN_POSITION SQL_TOKEN_REPEAT SQL_TOKEN_REPLACE
+%token <pParseNode> SQL_TOKEN_RIGHT SQL_TOKEN_RTRIM SQL_TOKEN_SOUNDEX SQL_TOKEN_SPACE SQL_TOKEN_SUBSTRING SQL_TOKEN_UCASE
/* time and date functions */
-%token <pParseNode> SQL_TOKEN_CURRENT_DATE SQL_TOKEN_CURRENT_TIME SQL_TOKEN_CURRENT_TIMESTAMP SQL_TOKEN_CURDATE SQL_TOKEN_CURTIME
-%token <pParseNode> SQL_TOKEN_DAYNAME SQL_TOKEN_DAYOFMONTH SQL_TOKEN_DAYOFWEEK SQL_TOKEN_DAYOFYEAR SQL_TOKEN_EXTRACT
+%token <pParseNode> SQL_TOKEN_CURRENT_DATE SQL_TOKEN_CURRENT_TIME SQL_TOKEN_CURRENT_TIMESTAMP SQL_TOKEN_CURDATE SQL_TOKEN_CURTIME
+%token <pParseNode> SQL_TOKEN_DAYNAME SQL_TOKEN_DAYOFMONTH SQL_TOKEN_DAYOFWEEK SQL_TOKEN_DAYOFYEAR SQL_TOKEN_EXTRACT
%token <pParseNode> SQL_TOKEN_HOUR SQL_TOKEN_MINUTE SQL_TOKEN_MONTH SQL_TOKEN_MONTHNAME SQL_TOKEN_NOW SQL_TOKEN_QUARTER SQL_TOKEN_DATEDIFF
-%token <pParseNode> SQL_TOKEN_SECOND SQL_TOKEN_TIMESTAMPADD SQL_TOKEN_TIMESTAMPDIFF SQL_TOKEN_TIMEVALUE SQL_TOKEN_WEEK SQL_TOKEN_YEAR
+%token <pParseNode> SQL_TOKEN_SECOND SQL_TOKEN_TIMESTAMPADD SQL_TOKEN_TIMESTAMPDIFF SQL_TOKEN_TIMEVALUE SQL_TOKEN_WEEK SQL_TOKEN_YEAR
/* numeric functions */
-%token <pParseNode> SQL_TOKEN_ABS SQL_TOKEN_ACOS SQL_TOKEN_ASIN SQL_TOKEN_ATAN SQL_TOKEN_ATAN2 SQL_TOKEN_CEILING
+%token <pParseNode> SQL_TOKEN_ABS SQL_TOKEN_ACOS SQL_TOKEN_ASIN SQL_TOKEN_ATAN SQL_TOKEN_ATAN2 SQL_TOKEN_CEILING
%token <pParseNode> SQL_TOKEN_COS SQL_TOKEN_COT SQL_TOKEN_DEGREES SQL_TOKEN_EXP SQL_TOKEN_FLOOR SQL_TOKEN_LOGF SQL_TOKEN_LOG SQL_TOKEN_LN
%token <pParseNode> SQL_TOKEN_LOG10 SQL_TOKEN_MOD SQL_TOKEN_PI SQL_TOKEN_POWER SQL_TOKEN_RADIANS SQL_TOKEN_RAND SQL_TOKEN_ROUNDMAGIC
%token <pParseNode> SQL_TOKEN_ROUND SQL_TOKEN_SIGN SQL_TOKEN_SIN SQL_TOKEN_SQRT SQL_TOKEN_TAN SQL_TOKEN_TRUNCATE
// computational operation
-%token <pParseNode> SQL_TOKEN_EVERY SQL_TOKEN_INTERSECTION SQL_TOKEN_FUSION SQL_TOKEN_COLLECT SQL_TOKEN_VAR_POP SQL_TOKEN_VAR_SAMP
+%token <pParseNode> SQL_TOKEN_EVERY SQL_TOKEN_INTERSECTION SQL_TOKEN_FUSION SQL_TOKEN_COLLECT SQL_TOKEN_VAR_POP SQL_TOKEN_VAR_SAMP
%token <pParseNode> SQL_TOKEN_STDDEV_SAMP SQL_TOKEN_STDDEV_POP
%token <pParseNode> SQL_TOKEN_RANK SQL_TOKEN_DENSE_RANK SQL_TOKEN_PERCENT_RANK SQL_TOKEN_CUME_DIST SQL_TOKEN_PERCENTILE_CONT SQL_TOKEN_PERCENTILE_DISC SQL_TOKEN_WITHIN SQL_TOKEN_ARRAY_AGG
@@ -222,7 +222,7 @@ using namespace connectivity;
%token <pParseNode> SQL_TOKEN_SESSION_USER SQL_TOKEN_SYSTEM_USER SQL_TOKEN_VARCHAR SQL_TOKEN_VARBINARY SQL_TOKEN_VARYING SQL_TOKEN_OBJECT SQL_TOKEN_NCLOB SQL_TOKEN_NATIONAL
%token <pParseNode> SQL_TOKEN_LARGE SQL_TOKEN_CLOB SQL_TOKEN_BLOB SQL_TOKEN_BIGINT SQL_TOKEN_BINARY SQL_TOKEN_WITHOUT SQL_TOKEN_BOOLEAN SQL_TOKEN_INTERVAL
// window function
-%token <pParseNode> SQL_TOKEN_OVER SQL_TOKEN_ROW_NUMBER SQL_TOKEN_NTILE SQL_TOKEN_LEAD SQL_TOKEN_LAG SQL_TOKEN_RESPECT SQL_TOKEN_IGNORE SQL_TOKEN_NULLS
+%token <pParseNode> SQL_TOKEN_OVER SQL_TOKEN_ROW_NUMBER SQL_TOKEN_NTILE SQL_TOKEN_LEAD SQL_TOKEN_LAG SQL_TOKEN_RESPECT SQL_TOKEN_IGNORE SQL_TOKEN_NULLS
%token <pParseNode> SQL_TOKEN_FIRST_VALUE SQL_TOKEN_LAST_VALUE SQL_TOKEN_NTH_VALUE SQL_TOKEN_FIRST SQL_TOKEN_LAST
%token <pParseNode> SQL_TOKEN_EXCLUDE SQL_TOKEN_OTHERS SQL_TOKEN_TIES SQL_TOKEN_FOLLOWING SQL_TOKEN_UNBOUNDED SQL_TOKEN_PRECEDING SQL_TOKEN_RANGE SQL_TOKEN_ROWS
%token <pParseNode> SQL_TOKEN_PARTITION SQL_TOKEN_WINDOW SQL_TOKEN_NO
@@ -263,8 +263,8 @@ using namespace connectivity;
%type <pParseNode> where_clause opt_group_by_clause column_ref_commalist opt_having_clause
%type <pParseNode> search_condition predicate comparison_predicate comparison_predicate_part_2 between_predicate between_predicate_part_2
%type <pParseNode> like_predicate opt_escape test_for_null null_predicate_part_2 in_predicate in_predicate_part_2 character_like_predicate_part_2 other_like_predicate_part_2
-%type <pParseNode> all_or_any_predicate any_all_some existence_test subquery quantified_comparison_predicate_part_2
-%type <pParseNode> scalar_exp_commalist parameter_ref literal parenthesized_boolean_value_expression
+%type <pParseNode> all_or_any_predicate any_all_some existence_test subquery quantified_comparison_predicate_part_2
+%type <pParseNode> scalar_exp_commalist parameter_ref literal parenthesized_boolean_value_expression
%type <pParseNode> column_ref data_type column cursor parameter range_variable user /*like_check*/
/* neue Regeln bei OJ */
%type <pParseNode> derived_column as_clause table_name num_primary term num_value_exp
@@ -281,9 +281,9 @@ using namespace connectivity;
%type <pParseNode> extract_source char_length_exp octet_length_exp bit_length_exp select_sublist string_value_exp
%type <pParseNode> char_value_exp concatenation char_factor char_primary string_value_fct char_substring_fct fold
%type <pParseNode> form_conversion char_translation trim_fct trim_operands trim_spec bit_value_fct bit_substring_fct op_column_commalist
-%type <pParseNode> /*bit_concatenation*/ bit_value_exp bit_factor bit_primary collate_clause char_value_fct unique_spec value_exp_commalist in_predicate_value unique_test update_source
+%type <pParseNode> /*bit_concatenation*/ bit_value_exp bit_factor bit_primary collate_clause char_value_fct unique_spec value_exp_commalist in_predicate_value unique_test update_source
%type <pParseNode> function_arg_commalist3 string_function_3Argument function_arg_commalist4 string_function_4Argument function_arg_commalist2 string_function_1Argument string_function_2Argument
-%type <pParseNode> date_function_0Argument date_function_1Argument function_name12 function_name23 function_name1 function_name2 function_name3 function_name0 numeric_function_0Argument numeric_function_1Argument numeric_function_2Argument
+%type <pParseNode> date_function_0Argument date_function_1Argument function_name12 function_name23 function_name1 function_name2 function_name3 function_name0 numeric_function_0Argument numeric_function_1Argument numeric_function_2Argument
%type <pParseNode> all query_primary sql_not for_length upper_lower comparison column_val cross_union /*opt_schema_element_list*/
%type <pParseNode> /*op_authorization op_schema*/ nil_fkt schema_element base_table_def base_table_element base_table_element_commalist
%type <pParseNode> column_def odbc_fct_spec odbc_call_spec odbc_fct_type op_parameter union_statement
@@ -292,7 +292,7 @@ using namespace connectivity;
%type <pParseNode> ordered_set_function inverse_distribution_function hypothetical_set_function hypothetical_set_function_value_expression_list rank_function_type within_group_specification inverse_distribution_function_type array_aggregate_function inverse_distribution_function_argument
%type <pParseNode> case_expression else_clause result_expression result case_abbreviation case_specification searched_when_clause simple_when_clause searched_case simple_case
%type <pParseNode> when_operand_list when_operand case_operand
-%type <pParseNode> trigger_definition trigger_name trigger_action_time trigger_event transition_table_or_variable_list triggered_action trigger_column_list triggered_when_clause triggered_SQL_statement SQL_procedure_statement old_transition_variable_name new_transition_variable_name
+%type <pParseNode> trigger_definition trigger_name trigger_action_time trigger_event transition_table_or_variable_list triggered_action trigger_column_list triggered_when_clause triggered_SQL_statement SQL_procedure_statement old_transition_variable_name new_transition_variable_name
%type <pParseNode> op_referencing op_trigger_columnlist op_triggered_action_for opt_row trigger_for SQL_procedure_statement_list transition_table_or_variable old_transition_table_name new_transition_table_name transition_table_name
%type <pParseNode> searched_when_clause_list simple_when_clause_list predefined_type opt_char_set_spec opt_collate_clause character_string_type national_character_string_type
%type <pParseNode> binary_string_type numeric_type boolean_type datetime_type interval_type opt_paren_precision paren_char_length opt_paren_char_large_length paren_character_large_object_length
@@ -323,7 +323,7 @@ sql_single_statement:
/* schema definition language */
/* Note: other ``sql:sal_Unicode() rules appear later in the grammar */
-
+
sql:
manipulative_statement
| schema_element
@@ -332,7 +332,7 @@ sql:
$$->append($1);
}
;
-
+
/***
op_authorization:
@@ -945,7 +945,7 @@ selection:
opt_result_offset_clause:
/* empty */ {$$ = SQL_NEW_RULE;}
| result_offset_clause
- ;
+ ;
result_offset_clause:
SQL_TOKEN_OFFSET offset_row_count row_or_rows
{
@@ -960,11 +960,11 @@ opt_fetch_first_row_count:
| fetch_first_row_count
;
first_or_next:
- SQL_TOKEN_FIRST
+ SQL_TOKEN_FIRST
| SQL_TOKEN_NEXT
;
row_or_rows:
- SQL_TOKEN_ROW
+ SQL_TOKEN_ROW
| SQL_TOKEN_ROWS
;
opt_fetch_first_clause:
@@ -1090,7 +1090,7 @@ table_ref:
$$->append($1 = newNode("(", SQL_NODE_PUNCTUATION));
$$->append($2);
$$->append($3 = newNode(")", SQL_NODE_PUNCTUATION));
- }
+ }
;
where_clause:
SQL_TOKEN_WHERE search_condition
@@ -1231,7 +1231,7 @@ predicate:
| in_predicate
| like_predicate
;
-comparison_predicate_part_2:
+comparison_predicate_part_2:
comparison row_value_constructor
{
$$ = SQL_NEW_RULE; // comparison_predicate: rule 1
@@ -1295,10 +1295,10 @@ comparison:
between_predicate_part_2:
sql_not SQL_TOKEN_BETWEEN row_value_constructor SQL_TOKEN_AND row_value_constructor
{
- if (xxx_pGLOBAL_SQLPARSER->inPredicateCheck()) // between_predicate: rule 2
+ if (xxx_pGLOBAL_SQLPARSER->inPredicateCheck()) // between_predicate: rule 2
{
$$ = SQL_NEW_RULE;
-
+
sal_Int16 nErg = xxx_pGLOBAL_SQLPARSER->buildPredicateRule($$,$3,$2,$5);
if(nErg == 1)
{
@@ -1310,7 +1310,7 @@ between_predicate_part_2:
pBetween_predicate->append(pColumnRef);
pBetween_predicate->append($$);
$$ = pBetween_predicate;
-
+
delete pTemp;
delete $4;
}
@@ -1332,7 +1332,7 @@ between_predicate_part_2:
}
between_predicate:
row_value_constructor between_predicate_part_2
- {
+ {
$$ = SQL_NEW_RULE; // between_predicate: rule 1
$$->append($1);
$$->append($2);
@@ -1734,7 +1734,7 @@ char_length_exp:
$$->append($3);
$$->append($4 = newNode(")", SQL_NODE_PUNCTUATION));
}
-
+
;
octet_length_exp:
SQL_TOKEN_OCTET_LENGTH '(' value_exp ')'
@@ -1977,85 +1977,85 @@ string_function_1Argument:
| SQL_TOKEN_SPACE
| SQL_TOKEN_UCASE
;
-
+
string_function_2Argument:
- SQL_TOKEN_REPEAT
+ SQL_TOKEN_REPEAT
| SQL_TOKEN_LEFT
| SQL_TOKEN_RIGHT
;
string_function_3Argument:
- SQL_TOKEN_REPLACE
+ SQL_TOKEN_REPLACE
;
string_function_4Argument:
SQL_TOKEN_INSERT
;
-
+
string_function:
SQL_TOKEN_CHAR
| SQL_TOKEN_CONCAT
| SQL_TOKEN_DIFFERENCE
- | SQL_TOKEN_LOCATE_2
- | SQL_TOKEN_SOUNDEX
+ | SQL_TOKEN_LOCATE_2
+ | SQL_TOKEN_SOUNDEX
;
date_function_0Argument:
- SQL_TOKEN_CURDATE
- | SQL_TOKEN_CURTIME
- | SQL_TOKEN_NOW
+ SQL_TOKEN_CURDATE
+ | SQL_TOKEN_CURTIME
+ | SQL_TOKEN_NOW
;
date_function_1Argument:
- SQL_TOKEN_DAYOFWEEK
- | SQL_TOKEN_DAYOFMONTH
- | SQL_TOKEN_DAYOFYEAR
- | SQL_TOKEN_MONTH
- | SQL_TOKEN_DAYNAME
- | SQL_TOKEN_MONTHNAME
- | SQL_TOKEN_QUARTER
- | SQL_TOKEN_HOUR
- | SQL_TOKEN_MINUTE
- | SQL_TOKEN_SECOND
+ SQL_TOKEN_DAYOFWEEK
+ | SQL_TOKEN_DAYOFMONTH
+ | SQL_TOKEN_DAYOFYEAR
+ | SQL_TOKEN_MONTH
+ | SQL_TOKEN_DAYNAME
+ | SQL_TOKEN_MONTHNAME
+ | SQL_TOKEN_QUARTER
+ | SQL_TOKEN_HOUR
+ | SQL_TOKEN_MINUTE
+ | SQL_TOKEN_SECOND
| SQL_TOKEN_YEAR
| SQL_TOKEN_DAY
| SQL_TOKEN_TIMEVALUE
| SQL_TOKEN_DATEVALUE
;
-
+
date_function:
- SQL_TOKEN_TIMESTAMPADD
- | SQL_TOKEN_TIMESTAMPDIFF
+ SQL_TOKEN_TIMESTAMPADD
+ | SQL_TOKEN_TIMESTAMPDIFF
;
numeric_function_0Argument:
- SQL_TOKEN_PI
+ SQL_TOKEN_PI
;
numeric_function_1Argument:
SQL_TOKEN_ABS
- | SQL_TOKEN_ACOS
- | SQL_TOKEN_ASIN
- | SQL_TOKEN_ATAN
- | SQL_TOKEN_CEILING
- | SQL_TOKEN_COS
- | SQL_TOKEN_COT
- | SQL_TOKEN_DEGREES
- | SQL_TOKEN_FLOOR
- | SQL_TOKEN_SIGN
- | SQL_TOKEN_SIN
- | SQL_TOKEN_SQRT
- | SQL_TOKEN_TAN
- | SQL_TOKEN_EXP
- | SQL_TOKEN_LOG10
+ | SQL_TOKEN_ACOS
+ | SQL_TOKEN_ASIN
+ | SQL_TOKEN_ATAN
+ | SQL_TOKEN_CEILING
+ | SQL_TOKEN_COS
+ | SQL_TOKEN_COT
+ | SQL_TOKEN_DEGREES
+ | SQL_TOKEN_FLOOR
+ | SQL_TOKEN_SIGN
+ | SQL_TOKEN_SIN
+ | SQL_TOKEN_SQRT
+ | SQL_TOKEN_TAN
+ | SQL_TOKEN_EXP
+ | SQL_TOKEN_LOG10
| SQL_TOKEN_LN
| SQL_TOKEN_RADIANS
| SQL_TOKEN_ROUNDMAGIC
;
numeric_function_2Argument:
- SQL_TOKEN_ATAN2
- | SQL_TOKEN_MOD
- | SQL_TOKEN_POWER
+ SQL_TOKEN_ATAN2
+ | SQL_TOKEN_MOD
+ | SQL_TOKEN_POWER
;
numeric_function:
- SQL_TOKEN_RAND
+ SQL_TOKEN_RAND
| SQL_TOKEN_TRUNCATE
;
-
+
window_function:
window_function_type SQL_TOKEN_OVER window_name_or_specification
{
@@ -2108,7 +2108,7 @@ number_of_tiles :
;
opt_lead_or_lag_function:
/* empty */ {$$ = SQL_NEW_RULE;}
- | ',' offset
+ | ',' offset
{
$$ = SQL_NEW_RULE;
$$->append($1 = newNode(",", SQL_NODE_PUNCTUATION));
@@ -2127,7 +2127,7 @@ opt_null_treatment:
/* empty */ {$$ = SQL_NEW_RULE;}
| null_treatment
;
-
+
lead_or_lag_function:
lead_or_lag '(' lead_or_lag_extent opt_lead_or_lag_function ')' opt_null_treatment
{
@@ -2141,7 +2141,7 @@ lead_or_lag_function:
}
;
lead_or_lag:
- SQL_TOKEN_LEAD
+ SQL_TOKEN_LEAD
| SQL_TOKEN_LAG
;
lead_or_lag_extent:
@@ -2154,7 +2154,7 @@ default_expression:
value_exp
;
null_treatment:
- SQL_TOKEN_RESPECT SQL_TOKEN_NULLS
+ SQL_TOKEN_RESPECT SQL_TOKEN_NULLS
| SQL_TOKEN_IGNORE SQL_TOKEN_NULLS
;
first_or_last_value_function:
@@ -2169,7 +2169,7 @@ first_or_last_value_function:
}
;
first_or_last_value :
- SQL_TOKEN_FIRST_VALUE
+ SQL_TOKEN_FIRST_VALUE
| SQL_TOKEN_LAST_VALUE
;
opt_from_first_or_last:
@@ -2215,7 +2215,7 @@ window_name_or_specification:
window_name
| in_line_window_specification
;
-in_line_window_specification:
+in_line_window_specification:
window_specification
;
opt_window_clause:
@@ -2263,11 +2263,11 @@ opt_existing_window_name:
/* empty */ {$$ = SQL_NEW_RULE;}
| existing_window_name
;
-opt_window_partition_clause:
+opt_window_partition_clause:
/* empty */ {$$ = SQL_NEW_RULE;}
| window_partition_clause
;
-opt_window_frame_clause:
+opt_window_frame_clause:
/* empty */ {$$ = SQL_NEW_RULE;}
| window_frame_clause
;
@@ -2316,7 +2316,7 @@ window_frame_clause:
$$->append($1);
$$->append($2);
$$->append($3);
- }
+ }
;
window_frame_units:
SQL_TOKEN_ROWS
@@ -2332,14 +2332,14 @@ window_frame_start:
$$ = SQL_NEW_RULE;
$$->append($1);
$$->append($2);
- }
+ }
| window_frame_preceding
| SQL_TOKEN_CURRENT SQL_TOKEN_ROW
{
$$ = SQL_NEW_RULE;
$$->append($1);
$$->append($2);
- }
+ }
;
window_frame_preceding:
unsigned_value_spec SQL_TOKEN_PRECEDING
@@ -2526,7 +2526,7 @@ set_fct_type:
| SQL_TOKEN_INTERSECTION
;
-ordered_set_function:
+ordered_set_function:
hypothetical_set_function
| inverse_distribution_function
;
@@ -2569,8 +2569,8 @@ within_group_specification:
;
hypothetical_set_function_value_expression_list:
value_exp_commalist
- ;
-
+ ;
+
inverse_distribution_function:
inverse_distribution_function_type '('inverse_distribution_function_argument ')' within_group_specification
{
@@ -2588,7 +2588,7 @@ inverse_distribution_function_type:
SQL_TOKEN_PERCENTILE_CONT
| SQL_TOKEN_PERCENTILE_DISC
;
-
+
array_aggregate_function:
SQL_TOKEN_ARRAY_AGG '(' value_exp opt_order_by_clause ')'
{
@@ -2600,7 +2600,7 @@ array_aggregate_function:
$$->append($5 = newNode(")", SQL_NODE_PUNCTUATION));
}
;
-
+
rank_function_type:
SQL_TOKEN_RANK
| SQL_TOKEN_DENSE_RANK
@@ -3093,7 +3093,7 @@ value_exp_commalist:
}
;
function_arg:
- result
+ result
| value_exp comparison value_exp
{
$$ = SQL_NEW_RULE;
@@ -3136,7 +3136,7 @@ function_args_commalist:
YYERROR;
}
;
-
+
value_exp:
num_value_exp /*[^')']*/
| string_value_exp
@@ -3402,7 +3402,7 @@ trim_operands:
}
| value_exp
;
-
+
trim_spec:
SQL_TOKEN_BOTH
| SQL_TOKEN_LEADING
@@ -3440,7 +3440,7 @@ catalog_name:
}
;
schema_name:
- SQL_TOKEN_NAME '.' table_name
+ SQL_TOKEN_NAME '.' table_name
{
$$ = SQL_NEW_RULE;
$$->append($1);
@@ -3464,7 +3464,7 @@ column_ref:
$$->append($1);
$$->append($2 = newNode(".", SQL_NODE_PUNCTUATION));
$$->append($3);}
-*/
+*/
| SQL_TOKEN_NAME '.' column_val %prec '.'
{$$ = SQL_NEW_RULE;
$$->append($1);
@@ -3524,7 +3524,7 @@ column_val:
data_type:
predefined_type
;
-opt_char_set_spec:
+opt_char_set_spec:
{$$ = SQL_NEW_RULE;}
| SQL_TOKEN_CHARACTER SQL_TOKEN_SET SQL_TOKEN_NAME
{
@@ -3532,7 +3532,7 @@ opt_char_set_spec:
$$->append($1);
$$->append($2);
$$->append($3);
- }
+ }
;
opt_collate_clause:
{$$ = SQL_NEW_RULE;}
@@ -3610,7 +3610,7 @@ opt_paren_char_large_length:
{$$ = SQL_NEW_RULE;}
| paren_character_large_object_length
;
-paren_character_large_object_length:
+paren_character_large_object_length:
'(' large_object_length ')'
{
$$ = SQL_NEW_RULE;
@@ -3619,7 +3619,7 @@ paren_character_large_object_length:
$$->append($3 = newNode(")", SQL_NODE_PUNCTUATION));
}
;
-
+
large_object_length:
SQL_TOKEN_INTNUM opt_multiplier
{
@@ -4056,7 +4056,7 @@ result_expression:
case_operand:
row_value_constructor_elem
;
-
+
cursor: SQL_TOKEN_NAME
{$$ = SQL_NEW_RULE;
$$->append($1);}
@@ -4091,7 +4091,7 @@ procedure: SQL_TOKEN_NAME
;
***/
-range_variable:
+range_variable:
{$$ = SQL_NEW_RULE;}
| opt_as SQL_TOKEN_NAME
{$$ = SQL_NEW_RULE;
@@ -4203,7 +4203,7 @@ op_triggered_action_for:
}
;
trigger_for:
- SQL_TOKEN_ROW
+ SQL_TOKEN_ROW
| SQL_TOKEN_STATEMENT
;
triggered_when_clause:
@@ -4230,12 +4230,12 @@ triggered_SQL_statement:
}
;
SQL_procedure_statement_list:
- SQL_procedure_statement
+ SQL_procedure_statement
{
$$ = SQL_NEW_LISTRULE;
$$->append($1);
}
- | SQL_procedure_statement_list ';' SQL_procedure_statement
+ | SQL_procedure_statement_list ';' SQL_procedure_statement
{
$1->append($3);
$$ = $1;
@@ -4244,7 +4244,7 @@ SQL_procedure_statement_list:
SQL_procedure_statement:
sql
;
-
+
transition_table_or_variable_list:
transition_table_or_variable
{
@@ -4542,7 +4542,7 @@ const double fMilliSecondsPerDay = 86400000.0;
sSearch.appendAscii("*?",2);
sReplace.appendAscii("%_",2);
}
-
+
for (sal_Int32 i = 0; i < nLen; i++)
{
const sal_Unicode c = aMatchStr[i];
@@ -4594,7 +4594,7 @@ void OSQLParser::setParseTree(OSQLParseNode * pNewParseTree)
*/
static ::rtl::OUString delComment( const ::rtl::OUString& rQuery )
{
- // First a quick search if there is any "--" or "//" or "/*", if not then the whole
+ // First a quick search if there is any "--" or "//" or "/*", if not then the whole
// copying loop is pointless.
if (rQuery.indexOfAsciiL( "--", 2, 0) < 0 && rQuery.indexOfAsciiL( "//", 2, 0) < 0 &&
rQuery.indexOfAsciiL( "/*", 2, 0) < 0)
@@ -4784,14 +4784,14 @@ sal_Int16 OSQLParser::buildNode(OSQLParseNode*& pAppend,OSQLParseNode* pCompare,
pComp = new OSQLInternalNode(aEmptyString, SQL_NODE_RULE,OSQLParser::RuleID(OSQLParseNode::between_predicate_part_2));
else
pComp = new OSQLInternalNode(aEmptyString, SQL_NODE_RULE,OSQLParser::RuleID(OSQLParseNode::comparison_predicate));
-
+
pComp->append(pColumnRef);
pComp->append(pCompare);
pComp->append(pLiteral);
if ( pLiteral2 )
{
pComp->append(new OSQLInternalNode(aEmptyString, SQL_NODE_KEYWORD,SQL_TOKEN_AND));
- pComp->append(pLiteral2);
+ pComp->append(pLiteral2);
}
pAppend->append(pComp);
return 1;
@@ -4848,7 +4848,7 @@ void OSQLParser::reduceLiteral(OSQLParseNode*& pLiteral, sal_Bool bAppendBlank)
{
aValue.appendAscii(" ");
}
-
+
aValue.append(pLiteral->getChild(1)->getTokenValue());
pLiteral = new OSQLInternalNode(aValue.makeStringAndClear(),SQL_NODE_STRING);
diff --git a/connectivity/source/parse/sqlflex.l b/connectivity/source/parse/sqlflex.l
index b3562a8403a8..9bb3cce3929e 100755
--- a/connectivity/source/parse/sqlflex.l
+++ b/connectivity/source/parse/sqlflex.l
@@ -27,7 +27,7 @@
//
//--------------------------------------------------------------------------
-#define YY_EXIT 1 // YY_FATAL will not halt the application
+#define YY_EXIT 1 // YY_FATAL will not halt the application
#ifndef _CSTDARG_
#include <cstdarg> // std::va_list
@@ -79,33 +79,33 @@ using namespace connectivity;
static ::rtl::OUString aEmptyString;
-static sal_Int32 gatherString(int delim, sal_Int32 nTyp);
-static sal_Int32 gatherName(const sal_Char*);
-static sal_Int32 gatherNamePre(const sal_Char* );
+static sal_Int32 gatherString(int delim, sal_Int32 nTyp);
+static sal_Int32 gatherName(const sal_Char*);
+static sal_Int32 gatherNamePre(const sal_Char* );
// has to be set before the parser starts
OSQLScanner* xxx_pGLOBAL_SQLSCAN = NULL;
-#define SQL_NEW_NODE(text, token) \
- SQLyylval.pParseNode = new OSQLInternalNode(text, token);
+#define SQL_NEW_NODE(text, token) \
+ SQLyylval.pParseNode = new OSQLInternalNode(text, token);
-#define SQL_NEW_KEYWORD(token) \
- SQLyylval.pParseNode = new OSQLInternalNode(aEmptyString, SQL_NODE_KEYWORD, (token)); return token;
+#define SQL_NEW_KEYWORD(token) \
+ SQLyylval.pParseNode = new OSQLInternalNode(aEmptyString, SQL_NODE_KEYWORD, (token)); return token;
-#define SQL_NEW_INTNUM SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_INTNUM); return SQL_TOKEN_INTNUM;
-#define SQL_NEW_APPROXNUM SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_APPROXNUM); return SQL_TOKEN_APPROXNUM;
-#define SQL_NEW_DATE SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_ACCESS_DATE); return SQL_TOKEN_ACCESS_DATE;
+#define SQL_NEW_INTNUM SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_INTNUM); return SQL_TOKEN_INTNUM;
+#define SQL_NEW_APPROXNUM SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_APPROXNUM); return SQL_TOKEN_APPROXNUM;
+#define SQL_NEW_DATE SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_ACCESS_DATE); return SQL_TOKEN_ACCESS_DATE;
-#define YY_INPUT(buf,result,max_size) \
-{ \
- int c = xxx_pGLOBAL_SQLSCAN->SQLyygetc(); \
+#define YY_INPUT(buf,result,max_size) \
+{ \
+ int c = xxx_pGLOBAL_SQLSCAN->SQLyygetc(); \
result = (c == EOF) ? YY_NULL : (buf[0] = c, 1);\
}
-#define YY_FATAL_ERROR(msg) \
-{ \
- xxx_pGLOBAL_SQLSCAN->SQLyyerror(msg); \
-}
-
+#define YY_FATAL_ERROR(msg) \
+{ \
+ xxx_pGLOBAL_SQLSCAN->SQLyyerror(msg); \
+}
+
//
//=============================================================================
@@ -121,368 +121,368 @@ OSQLScanner* xxx_pGLOBAL_SQLSCAN = NULL;
%option never-interactive
%%
-ABS {SQL_NEW_KEYWORD(SQL_TOKEN_ABS); }
-ACOS {SQL_NEW_KEYWORD(SQL_TOKEN_ACOS); }
-AFTER {SQL_NEW_KEYWORD(SQL_TOKEN_AFTER); }
-ALL {SQL_NEW_KEYWORD(SQL_TOKEN_ALL); }
-ALTER {SQL_NEW_KEYWORD(SQL_TOKEN_ALTER); }
-AND {SQL_NEW_KEYWORD(SQL_TOKEN_AND); }
-ANY {SQL_NEW_KEYWORD(SQL_TOKEN_ANY); }
-ARRAY_AGG {SQL_NEW_KEYWORD(SQL_TOKEN_ARRAY_AGG); }
-AS {SQL_NEW_KEYWORD(SQL_TOKEN_AS); }
-ASC {SQL_NEW_KEYWORD(SQL_TOKEN_ASC); }
-ASCII {SQL_NEW_KEYWORD(SQL_TOKEN_ASCII); }
-ASIN {SQL_NEW_KEYWORD(SQL_TOKEN_ASIN); }
-AT {SQL_NEW_KEYWORD(SQL_TOKEN_AT); }
-ATAN {SQL_NEW_KEYWORD(SQL_TOKEN_ATAN); }
-ATAN2 {SQL_NEW_KEYWORD(SQL_TOKEN_ATAN2); }
-ATOMIC {SQL_NEW_KEYWORD(SQL_TOKEN_ATOMIC); }
-AUTHORIZATION {SQL_NEW_KEYWORD(SQL_TOKEN_AUTHORIZATION); }
-AVG {SQL_NEW_KEYWORD(SQL_TOKEN_AVG); }
-
-BEFORE {SQL_NEW_KEYWORD(SQL_TOKEN_BEFORE); }
-BEGIN {SQL_NEW_KEYWORD(SQL_TOKEN_BEGIN); }
-BETWEEN {SQL_NEW_KEYWORD(SQL_TOKEN_BETWEEN); }
-BIGINT {SQL_NEW_KEYWORD(SQL_TOKEN_BIGINT); }
-BINARY {SQL_NEW_KEYWORD(SQL_TOKEN_BINARY); }
-BIT {SQL_NEW_KEYWORD(SQL_TOKEN_BIT); }
+ABS {SQL_NEW_KEYWORD(SQL_TOKEN_ABS); }
+ACOS {SQL_NEW_KEYWORD(SQL_TOKEN_ACOS); }
+AFTER {SQL_NEW_KEYWORD(SQL_TOKEN_AFTER); }
+ALL {SQL_NEW_KEYWORD(SQL_TOKEN_ALL); }
+ALTER {SQL_NEW_KEYWORD(SQL_TOKEN_ALTER); }
+AND {SQL_NEW_KEYWORD(SQL_TOKEN_AND); }
+ANY {SQL_NEW_KEYWORD(SQL_TOKEN_ANY); }
+ARRAY_AGG {SQL_NEW_KEYWORD(SQL_TOKEN_ARRAY_AGG); }
+AS {SQL_NEW_KEYWORD(SQL_TOKEN_AS); }
+ASC {SQL_NEW_KEYWORD(SQL_TOKEN_ASC); }
+ASCII {SQL_NEW_KEYWORD(SQL_TOKEN_ASCII); }
+ASIN {SQL_NEW_KEYWORD(SQL_TOKEN_ASIN); }
+AT {SQL_NEW_KEYWORD(SQL_TOKEN_AT); }
+ATAN {SQL_NEW_KEYWORD(SQL_TOKEN_ATAN); }
+ATAN2 {SQL_NEW_KEYWORD(SQL_TOKEN_ATAN2); }
+ATOMIC {SQL_NEW_KEYWORD(SQL_TOKEN_ATOMIC); }
+AUTHORIZATION {SQL_NEW_KEYWORD(SQL_TOKEN_AUTHORIZATION); }
+AVG {SQL_NEW_KEYWORD(SQL_TOKEN_AVG); }
+
+BEFORE {SQL_NEW_KEYWORD(SQL_TOKEN_BEFORE); }
+BEGIN {SQL_NEW_KEYWORD(SQL_TOKEN_BEGIN); }
+BETWEEN {SQL_NEW_KEYWORD(SQL_TOKEN_BETWEEN); }
+BIGINT {SQL_NEW_KEYWORD(SQL_TOKEN_BIGINT); }
+BINARY {SQL_NEW_KEYWORD(SQL_TOKEN_BINARY); }
+BIT {SQL_NEW_KEYWORD(SQL_TOKEN_BIT); }
BIT_LENGTH {SQL_NEW_KEYWORD(SQL_TOKEN_BIT_LENGTH); }
-BLOB {SQL_NEW_KEYWORD(SQL_TOKEN_BLOB); }
-BOTH {SQL_NEW_KEYWORD(SQL_TOKEN_BOTH); }
-BY {SQL_NEW_KEYWORD(SQL_TOKEN_BY); }
-
-CALL {SQL_NEW_KEYWORD(SQL_TOKEN_CALL); }
-CASE {SQL_NEW_KEYWORD(SQL_TOKEN_CASE); }
-CAST {SQL_NEW_KEYWORD(SQL_TOKEN_CAST); }
-CEILING {SQL_NEW_KEYWORD(SQL_TOKEN_CEILING); }
-CHAR {SQL_NEW_KEYWORD(SQL_TOKEN_CHAR); }
-CHARACTER {SQL_NEW_KEYWORD(SQL_TOKEN_CHARACTER); }
+BLOB {SQL_NEW_KEYWORD(SQL_TOKEN_BLOB); }
+BOTH {SQL_NEW_KEYWORD(SQL_TOKEN_BOTH); }
+BY {SQL_NEW_KEYWORD(SQL_TOKEN_BY); }
+
+CALL {SQL_NEW_KEYWORD(SQL_TOKEN_CALL); }
+CASE {SQL_NEW_KEYWORD(SQL_TOKEN_CASE); }
+CAST {SQL_NEW_KEYWORD(SQL_TOKEN_CAST); }
+CEILING {SQL_NEW_KEYWORD(SQL_TOKEN_CEILING); }
+CHAR {SQL_NEW_KEYWORD(SQL_TOKEN_CHAR); }
+CHARACTER {SQL_NEW_KEYWORD(SQL_TOKEN_CHARACTER); }
CHAR(ACTER)?_LENGTH {SQL_NEW_KEYWORD(SQL_TOKEN_CHAR_LENGTH); }
-CHECK {SQL_NEW_KEYWORD(SQL_TOKEN_CHECK); }
-CLOB {SQL_NEW_KEYWORD(SQL_TOKEN_CLOB); }
-COALESCE {SQL_NEW_KEYWORD(SQL_TOKEN_COALESCE); }
-COLLATE {SQL_NEW_KEYWORD(SQL_TOKEN_COLLATE); }
+CHECK {SQL_NEW_KEYWORD(SQL_TOKEN_CHECK); }
+CLOB {SQL_NEW_KEYWORD(SQL_TOKEN_CLOB); }
+COALESCE {SQL_NEW_KEYWORD(SQL_TOKEN_COALESCE); }
+COLLATE {SQL_NEW_KEYWORD(SQL_TOKEN_COLLATE); }
COLLECT {SQL_NEW_KEYWORD(SQL_TOKEN_COLLECT); }
-COMMIT {SQL_NEW_KEYWORD(SQL_TOKEN_COMMIT); }
-CONCAT {SQL_NEW_KEYWORD(SQL_TOKEN_CONCAT); }
-CONTINUE {SQL_NEW_KEYWORD(SQL_TOKEN_CONTINUE); }
-CONVERT {SQL_NEW_KEYWORD(SQL_TOKEN_CONVERT); }
-COS {SQL_NEW_KEYWORD(SQL_TOKEN_COS); }
-COT {SQL_NEW_KEYWORD(SQL_TOKEN_COT); }
-COUNT {SQL_NEW_KEYWORD(SQL_TOKEN_COUNT); }
-CREATE {SQL_NEW_KEYWORD(SQL_TOKEN_CREATE); }
-CROSS {SQL_NEW_KEYWORD(SQL_TOKEN_CROSS); }
-CUME_RANK {SQL_NEW_KEYWORD(SQL_TOKEN_CUME_DIST); }
-CURRENT {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT); }
-CURRENT_DATE {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_DATE); }
-CURRENT_CATALOG {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_CATALOG); }
-CURRENT_DEFAULT_TRANSFORM_GROUP {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_DEFAULT_TRANSFORM_GROUP); }
-CURRENT_PATH {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_PATH); }
-CURRENT_ROLE {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_ROLE); }
-CURRENT_SCHEMA {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_SCHEMA); }
-CURRENT_USER {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_USER); }
-CURDATE {SQL_NEW_KEYWORD(SQL_TOKEN_CURDATE); }
-CURRENT_TIME {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_TIME); }
-CURTIME {SQL_NEW_KEYWORD(SQL_TOKEN_CURTIME); }
-CURRENT_TIMESTAMP {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_TIMESTAMP); }
-CURSOR {SQL_NEW_KEYWORD(SQL_TOKEN_CURSOR); }
-
-D {SQL_NEW_KEYWORD(SQL_TOKEN_D); }
-DATE {SQL_NEW_KEYWORD(SQL_TOKEN_DATE); }
-DATEDIFF {SQL_NEW_KEYWORD(SQL_TOKEN_DATEDIFF); }
-DATEVALUE {SQL_NEW_KEYWORD(SQL_TOKEN_DATEVALUE); }
-DAY {SQL_NEW_KEYWORD(SQL_TOKEN_DAY); }
-DAYNAME {SQL_NEW_KEYWORD(SQL_TOKEN_DAYNAME); }
-DAYOFMONTH {SQL_NEW_KEYWORD(SQL_TOKEN_DAYOFMONTH); }
-DAYOFWEEK {SQL_NEW_KEYWORD(SQL_TOKEN_DAYOFWEEK); }
-DAYOFYEAR {SQL_NEW_KEYWORD(SQL_TOKEN_DAYOFYEAR); }
-DEC {SQL_NEW_KEYWORD(SQL_TOKEN_DEC); }
-DECIMAL {SQL_NEW_KEYWORD(SQL_TOKEN_DECIMAL); }
-DECLARE {SQL_NEW_KEYWORD(SQL_TOKEN_DECLARE); }
-DEFAULT {SQL_NEW_KEYWORD(SQL_TOKEN_DEFAULT); }
-DEGREES {SQL_NEW_KEYWORD(SQL_TOKEN_DEGREES); }
-DELETE {SQL_NEW_KEYWORD(SQL_TOKEN_DELETE); }
-DENSE_RANK {SQL_NEW_KEYWORD(SQL_TOKEN_DENSE_RANK); }
-DESC {SQL_NEW_KEYWORD(SQL_TOKEN_DESC); }
-DIFFERENCE {SQL_NEW_KEYWORD(SQL_TOKEN_DIFFERENCE); }
-DISTINCT {SQL_NEW_KEYWORD(SQL_TOKEN_DISTINCT); }
-DOUBLE {SQL_NEW_KEYWORD(SQL_TOKEN_DOUBLE); }
-DROP {SQL_NEW_KEYWORD(SQL_TOKEN_DROP); }
-
-EACH {SQL_NEW_KEYWORD(SQL_TOKEN_EACH); }
-ELSE {SQL_NEW_KEYWORD(SQL_TOKEN_ELSE); }
-END {SQL_NEW_KEYWORD(SQL_TOKEN_END); }
+COMMIT {SQL_NEW_KEYWORD(SQL_TOKEN_COMMIT); }
+CONCAT {SQL_NEW_KEYWORD(SQL_TOKEN_CONCAT); }
+CONTINUE {SQL_NEW_KEYWORD(SQL_TOKEN_CONTINUE); }
+CONVERT {SQL_NEW_KEYWORD(SQL_TOKEN_CONVERT); }
+COS {SQL_NEW_KEYWORD(SQL_TOKEN_COS); }
+COT {SQL_NEW_KEYWORD(SQL_TOKEN_COT); }
+COUNT {SQL_NEW_KEYWORD(SQL_TOKEN_COUNT); }
+CREATE {SQL_NEW_KEYWORD(SQL_TOKEN_CREATE); }
+CROSS {SQL_NEW_KEYWORD(SQL_TOKEN_CROSS); }
+CUME_RANK {SQL_NEW_KEYWORD(SQL_TOKEN_CUME_DIST); }
+CURRENT {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT); }
+CURRENT_DATE {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_DATE); }
+CURRENT_CATALOG {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_CATALOG); }
+CURRENT_DEFAULT_TRANSFORM_GROUP {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_DEFAULT_TRANSFORM_GROUP); }
+CURRENT_PATH {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_PATH); }
+CURRENT_ROLE {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_ROLE); }
+CURRENT_SCHEMA {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_SCHEMA); }
+CURRENT_USER {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_USER); }
+CURDATE {SQL_NEW_KEYWORD(SQL_TOKEN_CURDATE); }
+CURRENT_TIME {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_TIME); }
+CURTIME {SQL_NEW_KEYWORD(SQL_TOKEN_CURTIME); }
+CURRENT_TIMESTAMP {SQL_NEW_KEYWORD(SQL_TOKEN_CURRENT_TIMESTAMP); }
+CURSOR {SQL_NEW_KEYWORD(SQL_TOKEN_CURSOR); }
+
+D {SQL_NEW_KEYWORD(SQL_TOKEN_D); }
+DATE {SQL_NEW_KEYWORD(SQL_TOKEN_DATE); }
+DATEDIFF {SQL_NEW_KEYWORD(SQL_TOKEN_DATEDIFF); }
+DATEVALUE {SQL_NEW_KEYWORD(SQL_TOKEN_DATEVALUE); }
+DAY {SQL_NEW_KEYWORD(SQL_TOKEN_DAY); }
+DAYNAME {SQL_NEW_KEYWORD(SQL_TOKEN_DAYNAME); }
+DAYOFMONTH {SQL_NEW_KEYWORD(SQL_TOKEN_DAYOFMONTH); }
+DAYOFWEEK {SQL_NEW_KEYWORD(SQL_TOKEN_DAYOFWEEK); }
+DAYOFYEAR {SQL_NEW_KEYWORD(SQL_TOKEN_DAYOFYEAR); }
+DEC {SQL_NEW_KEYWORD(SQL_TOKEN_DEC); }
+DECIMAL {SQL_NEW_KEYWORD(SQL_TOKEN_DECIMAL); }
+DECLARE {SQL_NEW_KEYWORD(SQL_TOKEN_DECLARE); }
+DEFAULT {SQL_NEW_KEYWORD(SQL_TOKEN_DEFAULT); }
+DEGREES {SQL_NEW_KEYWORD(SQL_TOKEN_DEGREES); }
+DELETE {SQL_NEW_KEYWORD(SQL_TOKEN_DELETE); }
+DENSE_RANK {SQL_NEW_KEYWORD(SQL_TOKEN_DENSE_RANK); }
+DESC {SQL_NEW_KEYWORD(SQL_TOKEN_DESC); }
+DIFFERENCE {SQL_NEW_KEYWORD(SQL_TOKEN_DIFFERENCE); }
+DISTINCT {SQL_NEW_KEYWORD(SQL_TOKEN_DISTINCT); }
+DOUBLE {SQL_NEW_KEYWORD(SQL_TOKEN_DOUBLE); }
+DROP {SQL_NEW_KEYWORD(SQL_TOKEN_DROP); }
+
+EACH {SQL_NEW_KEYWORD(SQL_TOKEN_EACH); }
+ELSE {SQL_NEW_KEYWORD(SQL_TOKEN_ELSE); }
+END {SQL_NEW_KEYWORD(SQL_TOKEN_END); }
EVERY {SQL_NEW_KEYWORD(SQL_TOKEN_EVERY); }
-ESCAPE {SQL_NEW_KEYWORD(SQL_TOKEN_ESCAPE); }
-EXCEPT {SQL_NEW_KEYWORD(SQL_TOKEN_EXCEPT); }
-EXCLUDE {SQL_NEW_KEYWORD(SQL_TOKEN_EXCLUDE); }
-EXISTS {SQL_NEW_KEYWORD(SQL_TOKEN_EXISTS); }
-EXP {SQL_NEW_KEYWORD(SQL_TOKEN_EXP); }
-EXTRACT {SQL_NEW_KEYWORD(SQL_TOKEN_EXTRACT); }
-
-FALSE {SQL_NEW_KEYWORD(SQL_TOKEN_FALSE); }
-FETCH {SQL_NEW_KEYWORD(SQL_TOKEN_FETCH); }
-FIRST {SQL_NEW_KEYWORD(SQL_TOKEN_FIRST); }
-FIRST_VALUE {SQL_NEW_KEYWORD(SQL_TOKEN_FIRST_VALUE); }
-FLOAT {SQL_NEW_KEYWORD(SQL_TOKEN_FLOAT); }
-FLOOR {SQL_NEW_KEYWORD(SQL_TOKEN_FLOOR); }
-FN {SQL_NEW_KEYWORD(SQL_TOKEN_FN); }
-FOLLOWING {SQL_NEW_KEYWORD(SQL_TOKEN_FOLLOWING); }
-FOR {SQL_NEW_KEYWORD(SQL_TOKEN_FOR); }
-FOREIGN {SQL_NEW_KEYWORD(SQL_TOKEN_FOREIGN); }
-FOUND {SQL_NEW_KEYWORD(SQL_TOKEN_FOUND); }
-FROM {SQL_NEW_KEYWORD(SQL_TOKEN_FROM); }
-FULL {SQL_NEW_KEYWORD(SQL_TOKEN_FULL); }
+ESCAPE {SQL_NEW_KEYWORD(SQL_TOKEN_ESCAPE); }
+EXCEPT {SQL_NEW_KEYWORD(SQL_TOKEN_EXCEPT); }
+EXCLUDE {SQL_NEW_KEYWORD(SQL_TOKEN_EXCLUDE); }
+EXISTS {SQL_NEW_KEYWORD(SQL_TOKEN_EXISTS); }
+EXP {SQL_NEW_KEYWORD(SQL_TOKEN_EXP); }
+EXTRACT {SQL_NEW_KEYWORD(SQL_TOKEN_EXTRACT); }
+
+FALSE {SQL_NEW_KEYWORD(SQL_TOKEN_FALSE); }
+FETCH {SQL_NEW_KEYWORD(SQL_TOKEN_FETCH); }
+FIRST {SQL_NEW_KEYWORD(SQL_TOKEN_FIRST); }
+FIRST_VALUE {SQL_NEW_KEYWORD(SQL_TOKEN_FIRST_VALUE); }
+FLOAT {SQL_NEW_KEYWORD(SQL_TOKEN_FLOAT); }
+FLOOR {SQL_NEW_KEYWORD(SQL_TOKEN_FLOOR); }
+FN {SQL_NEW_KEYWORD(SQL_TOKEN_FN); }
+FOLLOWING {SQL_NEW_KEYWORD(SQL_TOKEN_FOLLOWING); }
+FOR {SQL_NEW_KEYWORD(SQL_TOKEN_FOR); }
+FOREIGN {SQL_NEW_KEYWORD(SQL_TOKEN_FOREIGN); }
+FOUND {SQL_NEW_KEYWORD(SQL_TOKEN_FOUND); }
+FROM {SQL_NEW_KEYWORD(SQL_TOKEN_FROM); }
+FULL {SQL_NEW_KEYWORD(SQL_TOKEN_FULL); }
FUSION {SQL_NEW_KEYWORD(SQL_TOKEN_FUSION); }
-GRANT {SQL_NEW_KEYWORD(SQL_TOKEN_GRANT); }
-GROUP {SQL_NEW_KEYWORD(SQL_TOKEN_GROUP); }
-
-HAVING {SQL_NEW_KEYWORD(SQL_TOKEN_HAVING); }
-HOUR {SQL_NEW_KEYWORD(SQL_TOKEN_HOUR); }
-
-IGNORE {SQL_NEW_KEYWORD(SQL_TOKEN_IGNORE); }
-IN {SQL_NEW_KEYWORD(SQL_TOKEN_IN); }
-INNER {SQL_NEW_KEYWORD(SQL_TOKEN_INNER); }
-INSERT {SQL_NEW_KEYWORD(SQL_TOKEN_INSERT); }
-INSTEAD {SQL_NEW_KEYWORD(SQL_TOKEN_INSTEAD); }
-INT(EGER)? {SQL_NEW_KEYWORD(SQL_TOKEN_INTEGER); }
-INTERSECT {SQL_NEW_KEYWORD(SQL_TOKEN_INTERSECT); }
-INTERVAL {SQL_NEW_KEYWORD(SQL_TOKEN_INTERVAL); }
-INTERSECTION {SQL_NEW_KEYWORD(SQL_TOKEN_INTERSECTION); }
-INTO {SQL_NEW_KEYWORD(SQL_TOKEN_INTO); }
-IS {SQL_NEW_KEYWORD(SQL_TOKEN_IS); }
-
-JOIN {SQL_NEW_KEYWORD(SQL_TOKEN_JOIN); }
-
-KEY {SQL_NEW_KEYWORD(SQL_TOKEN_KEY); }
-
-LAG {SQL_NEW_KEYWORD(SQL_TOKEN_LAG); }
-LARGE {SQL_NEW_KEYWORD(SQL_TOKEN_LARGE); }
-LAST {SQL_NEW_KEYWORD(SQL_TOKEN_LAST); }
-LAST_VALUE {SQL_NEW_KEYWORD(SQL_TOKEN_LAST_VALUE); }
-LCASE {SQL_NEW_KEYWORD(SQL_TOKEN_LCASE); }
-LEAD {SQL_NEW_KEYWORD(SQL_TOKEN_LEAD); }
-LEADING {SQL_NEW_KEYWORD(SQL_TOKEN_LEADING); }
-LEFT {SQL_NEW_KEYWORD(SQL_TOKEN_LEFT); }
-LENGTH {SQL_NEW_KEYWORD(SQL_TOKEN_LENGTH); }
-LIKE {SQL_NEW_KEYWORD(SQL_TOKEN_LIKE); }
-LIMIT {SQL_NEW_KEYWORD(SQL_TOKEN_LIMIT); }
-LN {SQL_NEW_KEYWORD(SQL_TOKEN_LN); }
-LOCAL {SQL_NEW_KEYWORD(SQL_TOKEN_LOCAL); }
-LOCATE {SQL_NEW_KEYWORD(SQL_TOKEN_LOCATE); }
-LOG {SQL_NEW_KEYWORD(SQL_TOKEN_LOG); }
-LOGF {SQL_NEW_KEYWORD(SQL_TOKEN_LOGF); }
-LOG10 {SQL_NEW_KEYWORD(SQL_TOKEN_LOG10); }
-LOWER {SQL_NEW_KEYWORD(SQL_TOKEN_LOWER); }
-LTRIM {SQL_NEW_KEYWORD(SQL_TOKEN_LTRIM); }
-
-MAX {SQL_NEW_KEYWORD(SQL_TOKEN_MAX); }
-MIN {SQL_NEW_KEYWORD(SQL_TOKEN_MIN); }
-MINUTE {SQL_NEW_KEYWORD(SQL_TOKEN_MINUTE); }
-MOD {SQL_NEW_KEYWORD(SQL_TOKEN_MOD); }
-MONTH {SQL_NEW_KEYWORD(SQL_TOKEN_MONTH); }
-MONTHNAME {SQL_NEW_KEYWORD(SQL_TOKEN_MONTHNAME); }
-
-NATIONAL {SQL_NEW_KEYWORD(SQL_TOKEN_NATIONAL); }
-NATURAL {SQL_NEW_KEYWORD(SQL_TOKEN_NATURAL); }
-NCHAR {SQL_NEW_KEYWORD(SQL_TOKEN_NCHAR); }
-NCLOB {SQL_NEW_KEYWORD(SQL_TOKEN_NCLOB); }
-NEW {SQL_NEW_KEYWORD(SQL_TOKEN_NEW); }
-NEXT {SQL_NEW_KEYWORD(SQL_TOKEN_NEXT); }
-NO {SQL_NEW_KEYWORD(SQL_TOKEN_NO); }
-NOT {SQL_NEW_KEYWORD(SQL_TOKEN_NOT); }
-NOW {SQL_NEW_KEYWORD(SQL_TOKEN_NOW); }
-NTH_VALUE {SQL_NEW_KEYWORD(SQL_TOKEN_NTH_VALUE); }
-NTILE {SQL_NEW_KEYWORD(SQL_TOKEN_NTILE); }
-NULL {SQL_NEW_KEYWORD(SQL_TOKEN_NULL); }
-NULLIF {SQL_NEW_KEYWORD(SQL_TOKEN_NULLIF); }
-NULLS {SQL_NEW_KEYWORD(SQL_TOKEN_NULLS); }
-NUMERIC {SQL_NEW_KEYWORD(SQL_TOKEN_NUMERIC); }
-
-OBJECT {SQL_NEW_KEYWORD(SQL_TOKEN_OBJECT); }
-OCTET_LENGTH {SQL_NEW_KEYWORD(SQL_TOKEN_OCTET_LENGTH); }
-OF {SQL_NEW_KEYWORD(SQL_TOKEN_OF); }
-OFFSET {SQL_NEW_KEYWORD(SQL_TOKEN_OFFSET); }
-OJ {SQL_NEW_KEYWORD(SQL_TOKEN_OJ); }
-OLD {SQL_NEW_KEYWORD(SQL_TOKEN_OLD); }
-ON {SQL_NEW_KEYWORD(SQL_TOKEN_ON); }
-ONLY {SQL_NEW_KEYWORD(SQL_TOKEN_ONLY); }
-OPTION {SQL_NEW_KEYWORD(SQL_TOKEN_OPTION); }
-OR {SQL_NEW_KEYWORD(SQL_TOKEN_OR); }
-ORDER {SQL_NEW_KEYWORD(SQL_TOKEN_ORDER); }
-OTHERS {SQL_NEW_KEYWORD(SQL_TOKEN_OTHERS); }
-OUTER {SQL_NEW_KEYWORD(SQL_TOKEN_OUTER); }
-OVER {SQL_NEW_KEYWORD(SQL_TOKEN_OVER); }
-
-PARTITION {SQL_NEW_KEYWORD(SQL_TOKEN_PARTITION); }
-PERCENT_RANK {SQL_NEW_KEYWORD(SQL_TOKEN_PERCENT_RANK); }
-PERCENTILE_CONT {SQL_NEW_KEYWORD(SQL_TOKEN_PERCENTILE_CONT); }
-PERCENTILE_DISC {SQL_NEW_KEYWORD(SQL_TOKEN_PERCENTILE_DISC); }
-PI {SQL_NEW_KEYWORD(SQL_TOKEN_PI); }
-POSITION {SQL_NEW_KEYWORD(SQL_TOKEN_POSITION); }
-POWER {SQL_NEW_KEYWORD(SQL_TOKEN_POWER); }
+GRANT {SQL_NEW_KEYWORD(SQL_TOKEN_GRANT); }
+GROUP {SQL_NEW_KEYWORD(SQL_TOKEN_GROUP); }
+
+HAVING {SQL_NEW_KEYWORD(SQL_TOKEN_HAVING); }
+HOUR {SQL_NEW_KEYWORD(SQL_TOKEN_HOUR); }
+
+IGNORE {SQL_NEW_KEYWORD(SQL_TOKEN_IGNORE); }
+IN {SQL_NEW_KEYWORD(SQL_TOKEN_IN); }
+INNER {SQL_NEW_KEYWORD(SQL_TOKEN_INNER); }
+INSERT {SQL_NEW_KEYWORD(SQL_TOKEN_INSERT); }
+INSTEAD {SQL_NEW_KEYWORD(SQL_TOKEN_INSTEAD); }
+INT(EGER)? {SQL_NEW_KEYWORD(SQL_TOKEN_INTEGER); }
+INTERSECT {SQL_NEW_KEYWORD(SQL_TOKEN_INTERSECT); }
+INTERVAL {SQL_NEW_KEYWORD(SQL_TOKEN_INTERVAL); }
+INTERSECTION {SQL_NEW_KEYWORD(SQL_TOKEN_INTERSECTION); }
+INTO {SQL_NEW_KEYWORD(SQL_TOKEN_INTO); }
+IS {SQL_NEW_KEYWORD(SQL_TOKEN_IS); }
+
+JOIN {SQL_NEW_KEYWORD(SQL_TOKEN_JOIN); }
+
+KEY {SQL_NEW_KEYWORD(SQL_TOKEN_KEY); }
+
+LAG {SQL_NEW_KEYWORD(SQL_TOKEN_LAG); }
+LARGE {SQL_NEW_KEYWORD(SQL_TOKEN_LARGE); }
+LAST {SQL_NEW_KEYWORD(SQL_TOKEN_LAST); }
+LAST_VALUE {SQL_NEW_KEYWORD(SQL_TOKEN_LAST_VALUE); }
+LCASE {SQL_NEW_KEYWORD(SQL_TOKEN_LCASE); }
+LEAD {SQL_NEW_KEYWORD(SQL_TOKEN_LEAD); }
+LEADING {SQL_NEW_KEYWORD(SQL_TOKEN_LEADING); }
+LEFT {SQL_NEW_KEYWORD(SQL_TOKEN_LEFT); }
+LENGTH {SQL_NEW_KEYWORD(SQL_TOKEN_LENGTH); }
+LIKE {SQL_NEW_KEYWORD(SQL_TOKEN_LIKE); }
+LIMIT {SQL_NEW_KEYWORD(SQL_TOKEN_LIMIT); }
+LN {SQL_NEW_KEYWORD(SQL_TOKEN_LN); }
+LOCAL {SQL_NEW_KEYWORD(SQL_TOKEN_LOCAL); }
+LOCATE {SQL_NEW_KEYWORD(SQL_TOKEN_LOCATE); }
+LOG {SQL_NEW_KEYWORD(SQL_TOKEN_LOG); }
+LOGF {SQL_NEW_KEYWORD(SQL_TOKEN_LOGF); }
+LOG10 {SQL_NEW_KEYWORD(SQL_TOKEN_LOG10); }
+LOWER {SQL_NEW_KEYWORD(SQL_TOKEN_LOWER); }
+LTRIM {SQL_NEW_KEYWORD(SQL_TOKEN_LTRIM); }
+
+MAX {SQL_NEW_KEYWORD(SQL_TOKEN_MAX); }
+MIN {SQL_NEW_KEYWORD(SQL_TOKEN_MIN); }
+MINUTE {SQL_NEW_KEYWORD(SQL_TOKEN_MINUTE); }
+MOD {SQL_NEW_KEYWORD(SQL_TOKEN_MOD); }
+MONTH {SQL_NEW_KEYWORD(SQL_TOKEN_MONTH); }
+MONTHNAME {SQL_NEW_KEYWORD(SQL_TOKEN_MONTHNAME); }
+
+NATIONAL {SQL_NEW_KEYWORD(SQL_TOKEN_NATIONAL); }
+NATURAL {SQL_NEW_KEYWORD(SQL_TOKEN_NATURAL); }
+NCHAR {SQL_NEW_KEYWORD(SQL_TOKEN_NCHAR); }
+NCLOB {SQL_NEW_KEYWORD(SQL_TOKEN_NCLOB); }
+NEW {SQL_NEW_KEYWORD(SQL_TOKEN_NEW); }
+NEXT {SQL_NEW_KEYWORD(SQL_TOKEN_NEXT); }
+NO {SQL_NEW_KEYWORD(SQL_TOKEN_NO); }
+NOT {SQL_NEW_KEYWORD(SQL_TOKEN_NOT); }
+NOW {SQL_NEW_KEYWORD(SQL_TOKEN_NOW); }
+NTH_VALUE {SQL_NEW_KEYWORD(SQL_TOKEN_NTH_VALUE); }
+NTILE {SQL_NEW_KEYWORD(SQL_TOKEN_NTILE); }
+NULL {SQL_NEW_KEYWORD(SQL_TOKEN_NULL); }
+NULLIF {SQL_NEW_KEYWORD(SQL_TOKEN_NULLIF); }
+NULLS {SQL_NEW_KEYWORD(SQL_TOKEN_NULLS); }
+NUMERIC {SQL_NEW_KEYWORD(SQL_TOKEN_NUMERIC); }
+
+OBJECT {SQL_NEW_KEYWORD(SQL_TOKEN_OBJECT); }
+OCTET_LENGTH {SQL_NEW_KEYWORD(SQL_TOKEN_OCTET_LENGTH); }
+OF {SQL_NEW_KEYWORD(SQL_TOKEN_OF); }
+OFFSET {SQL_NEW_KEYWORD(SQL_TOKEN_OFFSET); }
+OJ {SQL_NEW_KEYWORD(SQL_TOKEN_OJ); }
+OLD {SQL_NEW_KEYWORD(SQL_TOKEN_OLD); }
+ON {SQL_NEW_KEYWORD(SQL_TOKEN_ON); }
+ONLY {SQL_NEW_KEYWORD(SQL_TOKEN_ONLY); }
+OPTION {SQL_NEW_KEYWORD(SQL_TOKEN_OPTION); }
+OR {SQL_NEW_KEYWORD(SQL_TOKEN_OR); }
+ORDER {SQL_NEW_KEYWORD(SQL_TOKEN_ORDER); }
+OTHERS {SQL_NEW_KEYWORD(SQL_TOKEN_OTHERS); }
+OUTER {SQL_NEW_KEYWORD(SQL_TOKEN_OUTER); }
+OVER {SQL_NEW_KEYWORD(SQL_TOKEN_OVER); }
+
+PARTITION {SQL_NEW_KEYWORD(SQL_TOKEN_PARTITION); }
+PERCENT_RANK {SQL_NEW_KEYWORD(SQL_TOKEN_PERCENT_RANK); }
+PERCENTILE_CONT {SQL_NEW_KEYWORD(SQL_TOKEN_PERCENTILE_CONT); }
+PERCENTILE_DISC {SQL_NEW_KEYWORD(SQL_TOKEN_PERCENTILE_DISC); }
+PI {SQL_NEW_KEYWORD(SQL_TOKEN_PI); }
+POSITION {SQL_NEW_KEYWORD(SQL_TOKEN_POSITION); }
+POWER {SQL_NEW_KEYWORD(SQL_TOKEN_POWER); }
PRECEDING {SQL_NEW_KEYWORD(SQL_TOKEN_PRECEDING); }
PRECISION {SQL_NEW_KEYWORD(SQL_TOKEN_PRECISION); }
-PRIMARY {SQL_NEW_KEYWORD(SQL_TOKEN_PRIMARY); }
-PRIVILEGES {SQL_NEW_KEYWORD(SQL_TOKEN_PRIVILEGES); }
+PRIMARY {SQL_NEW_KEYWORD(SQL_TOKEN_PRIMARY); }
+PRIVILEGES {SQL_NEW_KEYWORD(SQL_TOKEN_PRIVILEGES); }
PROCEDURE {SQL_NEW_KEYWORD(SQL_TOKEN_PROCEDURE); }
-PUBLIC {SQL_NEW_KEYWORD(SQL_TOKEN_PUBLIC); }
-
-QUARTER {SQL_NEW_KEYWORD(SQL_TOKEN_QUARTER); }
-
-RADIANS {SQL_NEW_KEYWORD(SQL_TOKEN_RADIANS); }
-RAND {SQL_NEW_KEYWORD(SQL_TOKEN_RAND); }
-RANGE {SQL_NEW_KEYWORD(SQL_TOKEN_RANGE); }
-RANK {SQL_NEW_KEYWORD(SQL_TOKEN_RANK); }
-REAL {SQL_NEW_KEYWORD(SQL_TOKEN_REAL); }
-REFERENCES {SQL_NEW_KEYWORD(SQL_TOKEN_REFERENCES); }
-REFERENCING {SQL_NEW_KEYWORD(SQL_TOKEN_REFERENCING); }
-REPEAT {SQL_NEW_KEYWORD(SQL_TOKEN_REPEAT); }
-REPLACE {SQL_NEW_KEYWORD(SQL_TOKEN_REPLACE); }
-RESPECT {SQL_NEW_KEYWORD(SQL_TOKEN_RESPECT); }
+PUBLIC {SQL_NEW_KEYWORD(SQL_TOKEN_PUBLIC); }
+
+QUARTER {SQL_NEW_KEYWORD(SQL_TOKEN_QUARTER); }
+
+RADIANS {SQL_NEW_KEYWORD(SQL_TOKEN_RADIANS); }
+RAND {SQL_NEW_KEYWORD(SQL_TOKEN_RAND); }
+RANGE {SQL_NEW_KEYWORD(SQL_TOKEN_RANGE); }
+RANK {SQL_NEW_KEYWORD(SQL_TOKEN_RANK); }
+REAL {SQL_NEW_KEYWORD(SQL_TOKEN_REAL); }
+REFERENCES {SQL_NEW_KEYWORD(SQL_TOKEN_REFERENCES); }
+REFERENCING {SQL_NEW_KEYWORD(SQL_TOKEN_REFERENCING); }
+REPEAT {SQL_NEW_KEYWORD(SQL_TOKEN_REPEAT); }
+REPLACE {SQL_NEW_KEYWORD(SQL_TOKEN_REPLACE); }
+RESPECT {SQL_NEW_KEYWORD(SQL_TOKEN_RESPECT); }
ROLLBACK {SQL_NEW_KEYWORD(SQL_TOKEN_ROLLBACK); }
-ROUND {SQL_NEW_KEYWORD(SQL_TOKEN_ROUND); }
-ROUNDMAGIC {SQL_NEW_KEYWORD(SQL_TOKEN_ROUNDMAGIC); }
-ROW {SQL_NEW_KEYWORD(SQL_TOKEN_ROW); }
-ROWS {SQL_NEW_KEYWORD(SQL_TOKEN_ROWS); }
-ROW_NUMBER {SQL_NEW_KEYWORD(SQL_TOKEN_ROW_NUMBER); }
-RIGHT {SQL_NEW_KEYWORD(SQL_TOKEN_RIGHT); }
-RTRIM {SQL_NEW_KEYWORD(SQL_TOKEN_RTRIM); }
-
-SCHEMA {SQL_NEW_KEYWORD(SQL_TOKEN_SCHEMA); }
-SECOND {SQL_NEW_KEYWORD(SQL_TOKEN_SECOND); }
-SELECT {SQL_NEW_KEYWORD(SQL_TOKEN_SELECT); }
-SET {SQL_NEW_KEYWORD(SQL_TOKEN_SET); }
-SIZE {SQL_NEW_KEYWORD(SQL_TOKEN_SIZE); }
-SIGN {SQL_NEW_KEYWORD(SQL_TOKEN_SIGN); }
-SIN {SQL_NEW_KEYWORD(SQL_TOKEN_SIN); }
+ROUND {SQL_NEW_KEYWORD(SQL_TOKEN_ROUND); }
+ROUNDMAGIC {SQL_NEW_KEYWORD(SQL_TOKEN_ROUNDMAGIC); }
+ROW {SQL_NEW_KEYWORD(SQL_TOKEN_ROW); }
+ROWS {SQL_NEW_KEYWORD(SQL_TOKEN_ROWS); }
+ROW_NUMBER {SQL_NEW_KEYWORD(SQL_TOKEN_ROW_NUMBER); }
+RIGHT {SQL_NEW_KEYWORD(SQL_TOKEN_RIGHT); }
+RTRIM {SQL_NEW_KEYWORD(SQL_TOKEN_RTRIM); }
+
+SCHEMA {SQL_NEW_KEYWORD(SQL_TOKEN_SCHEMA); }
+SECOND {SQL_NEW_KEYWORD(SQL_TOKEN_SECOND); }
+SELECT {SQL_NEW_KEYWORD(SQL_TOKEN_SELECT); }
+SET {SQL_NEW_KEYWORD(SQL_TOKEN_SET); }
+SIZE {SQL_NEW_KEYWORD(SQL_TOKEN_SIZE); }
+SIGN {SQL_NEW_KEYWORD(SQL_TOKEN_SIGN); }
+SIN {SQL_NEW_KEYWORD(SQL_TOKEN_SIN); }
SMALLINT {SQL_NEW_KEYWORD(SQL_TOKEN_SMALLINT); }
-SOME {SQL_NEW_KEYWORD(SQL_TOKEN_SOME); }
-SOUNDEX {SQL_NEW_KEYWORD(SQL_TOKEN_SOUNDEX); }
-SPACE {SQL_NEW_KEYWORD(SQL_TOKEN_SPACE); }
-SQRT {SQL_NEW_KEYWORD(SQL_TOKEN_SQRT); }
+SOME {SQL_NEW_KEYWORD(SQL_TOKEN_SOME); }
+SOUNDEX {SQL_NEW_KEYWORD(SQL_TOKEN_SOUNDEX); }
+SPACE {SQL_NEW_KEYWORD(SQL_TOKEN_SPACE); }
+SQRT {SQL_NEW_KEYWORD(SQL_TOKEN_SQRT); }
STDDEV_POP {SQL_NEW_KEYWORD(SQL_TOKEN_STDDEV_POP); }
-STDDEV_SAMP {SQL_NEW_KEYWORD(SQL_TOKEN_STDDEV_SAMP); }
-STATEMENT {SQL_NEW_KEYWORD(SQL_TOKEN_STATEMENT); }
-SUBSTRING {SQL_NEW_KEYWORD(SQL_TOKEN_SUBSTRING); }
-SUM {SQL_NEW_KEYWORD(SQL_TOKEN_SUM); }
-SESSION_USER {SQL_NEW_KEYWORD(SQL_TOKEN_SESSION_USER); }
-SYSTEM_USER {SQL_NEW_KEYWORD(SQL_TOKEN_SYSTEM_USER); }
-
-TABLE {SQL_NEW_KEYWORD(SQL_TOKEN_TABLE); }
-TAN {SQL_NEW_KEYWORD(SQL_TOKEN_TAN); }
-THEN {SQL_NEW_KEYWORD(SQL_TOKEN_THEN); }
-TIES {SQL_NEW_KEYWORD(SQL_TOKEN_TIES); }
-TIME {SQL_NEW_KEYWORD(SQL_TOKEN_TIME); }
-TIMESTAMP {SQL_NEW_KEYWORD(SQL_TOKEN_TIMESTAMP); }
-TIMESTAMPADD {SQL_NEW_KEYWORD(SQL_TOKEN_TIMESTAMPADD); }
-TIMESTAMPDIFF {SQL_NEW_KEYWORD(SQL_TOKEN_TIMESTAMPDIFF); }
-TIMEVALUE {SQL_NEW_KEYWORD(SQL_TOKEN_TIMEVALUE); }
-TIMEZONE_HOUR {SQL_NEW_KEYWORD(SQL_TOKEN_TIMEZONE_HOUR); }
-TIMEZONE_MINUTE {SQL_NEW_KEYWORD(SQL_TOKEN_TIMEZONE_MINUTE); }
-TO {SQL_NEW_KEYWORD(SQL_TOKEN_TO); }
-TRAILING {SQL_NEW_KEYWORD(SQL_TOKEN_TRAILING); }
-TRANSLATE {SQL_NEW_KEYWORD(SQL_TOKEN_TRANSLATE); }
-TRIGGER {SQL_NEW_KEYWORD(SQL_TOKEN_TRIGGER); }
-TRIM {SQL_NEW_KEYWORD(SQL_TOKEN_TRIM); }
-TRUE {SQL_NEW_KEYWORD(SQL_TOKEN_TRUE); }
-TRUNCATE {SQL_NEW_KEYWORD(SQL_TOKEN_TRUNCATE); }
-TS {SQL_NEW_KEYWORD(SQL_TOKEN_TS); }
-T {SQL_NEW_KEYWORD(SQL_TOKEN_T); }
-
-UCASE {SQL_NEW_KEYWORD(SQL_TOKEN_UCASE); }
-UNBOUNDED {SQL_NEW_KEYWORD(SQL_TOKEN_UNBOUNDED); }
-UNION {SQL_NEW_KEYWORD(SQL_TOKEN_UNION); }
-UNIQUE {SQL_NEW_KEYWORD(SQL_TOKEN_UNIQUE); }
-UNKNOWN {SQL_NEW_KEYWORD(SQL_TOKEN_UNKNOWN); }
-UPDATE {SQL_NEW_KEYWORD(SQL_TOKEN_UPDATE); }
-UPPER {SQL_NEW_KEYWORD(SQL_TOKEN_UPPER); }
-USAGE {SQL_NEW_KEYWORD(SQL_TOKEN_USAGE); }
-USER {SQL_NEW_KEYWORD(SQL_TOKEN_USER); }
-USING {SQL_NEW_KEYWORD(SQL_TOKEN_USING); }
-
-VARBINARY {SQL_NEW_KEYWORD(SQL_TOKEN_VARBINARY); }
+STDDEV_SAMP {SQL_NEW_KEYWORD(SQL_TOKEN_STDDEV_SAMP); }
+STATEMENT {SQL_NEW_KEYWORD(SQL_TOKEN_STATEMENT); }
+SUBSTRING {SQL_NEW_KEYWORD(SQL_TOKEN_SUBSTRING); }
+SUM {SQL_NEW_KEYWORD(SQL_TOKEN_SUM); }
+SESSION_USER {SQL_NEW_KEYWORD(SQL_TOKEN_SESSION_USER); }
+SYSTEM_USER {SQL_NEW_KEYWORD(SQL_TOKEN_SYSTEM_USER); }
+
+TABLE {SQL_NEW_KEYWORD(SQL_TOKEN_TABLE); }
+TAN {SQL_NEW_KEYWORD(SQL_TOKEN_TAN); }
+THEN {SQL_NEW_KEYWORD(SQL_TOKEN_THEN); }
+TIES {SQL_NEW_KEYWORD(SQL_TOKEN_TIES); }
+TIME {SQL_NEW_KEYWORD(SQL_TOKEN_TIME); }
+TIMESTAMP {SQL_NEW_KEYWORD(SQL_TOKEN_TIMESTAMP); }
+TIMESTAMPADD {SQL_NEW_KEYWORD(SQL_TOKEN_TIMESTAMPADD); }
+TIMESTAMPDIFF {SQL_NEW_KEYWORD(SQL_TOKEN_TIMESTAMPDIFF); }
+TIMEVALUE {SQL_NEW_KEYWORD(SQL_TOKEN_TIMEVALUE); }
+TIMEZONE_HOUR {SQL_NEW_KEYWORD(SQL_TOKEN_TIMEZONE_HOUR); }
+TIMEZONE_MINUTE {SQL_NEW_KEYWORD(SQL_TOKEN_TIMEZONE_MINUTE); }
+TO {SQL_NEW_KEYWORD(SQL_TOKEN_TO); }
+TRAILING {SQL_NEW_KEYWORD(SQL_TOKEN_TRAILING); }
+TRANSLATE {SQL_NEW_KEYWORD(SQL_TOKEN_TRANSLATE); }
+TRIGGER {SQL_NEW_KEYWORD(SQL_TOKEN_TRIGGER); }
+TRIM {SQL_NEW_KEYWORD(SQL_TOKEN_TRIM); }
+TRUE {SQL_NEW_KEYWORD(SQL_TOKEN_TRUE); }
+TRUNCATE {SQL_NEW_KEYWORD(SQL_TOKEN_TRUNCATE); }
+TS {SQL_NEW_KEYWORD(SQL_TOKEN_TS); }
+T {SQL_NEW_KEYWORD(SQL_TOKEN_T); }
+
+UCASE {SQL_NEW_KEYWORD(SQL_TOKEN_UCASE); }
+UNBOUNDED {SQL_NEW_KEYWORD(SQL_TOKEN_UNBOUNDED); }
+UNION {SQL_NEW_KEYWORD(SQL_TOKEN_UNION); }
+UNIQUE {SQL_NEW_KEYWORD(SQL_TOKEN_UNIQUE); }
+UNKNOWN {SQL_NEW_KEYWORD(SQL_TOKEN_UNKNOWN); }
+UPDATE {SQL_NEW_KEYWORD(SQL_TOKEN_UPDATE); }
+UPPER {SQL_NEW_KEYWORD(SQL_TOKEN_UPPER); }
+USAGE {SQL_NEW_KEYWORD(SQL_TOKEN_USAGE); }
+USER {SQL_NEW_KEYWORD(SQL_TOKEN_USER); }
+USING {SQL_NEW_KEYWORD(SQL_TOKEN_USING); }
+
+VARBINARY {SQL_NEW_KEYWORD(SQL_TOKEN_VARBINARY); }
VARCHAR {SQL_NEW_KEYWORD(SQL_TOKEN_VARCHAR); }
VARYING {SQL_NEW_KEYWORD(SQL_TOKEN_VARYING); }
VAR_POP {SQL_NEW_KEYWORD(SQL_TOKEN_VAR_POP); }
VAR_SAMP {SQL_NEW_KEYWORD(SQL_TOKEN_VAR_SAMP); }
-VALUE {SQL_NEW_KEYWORD(SQL_TOKEN_VALUE); }
-VALUES {SQL_NEW_KEYWORD(SQL_TOKEN_VALUES); }
-VIEW {SQL_NEW_KEYWORD(SQL_TOKEN_VIEW); }
+VALUE {SQL_NEW_KEYWORD(SQL_TOKEN_VALUE); }
+VALUES {SQL_NEW_KEYWORD(SQL_TOKEN_VALUES); }
+VIEW {SQL_NEW_KEYWORD(SQL_TOKEN_VIEW); }
-WEEK {SQL_NEW_KEYWORD(SQL_TOKEN_WEEK); }
-WHEN {SQL_NEW_KEYWORD(SQL_TOKEN_WHEN); }
-WHERE {SQL_NEW_KEYWORD(SQL_TOKEN_WHERE); }
-WITH {SQL_NEW_KEYWORD(SQL_TOKEN_WITH); }
-WITHIN {SQL_NEW_KEYWORD(SQL_TOKEN_WITHIN); }
-WITHOUT {SQL_NEW_KEYWORD(SQL_TOKEN_WITHOUT); }
-WORK {SQL_NEW_KEYWORD(SQL_TOKEN_WORK); }
+WEEK {SQL_NEW_KEYWORD(SQL_TOKEN_WEEK); }
+WHEN {SQL_NEW_KEYWORD(SQL_TOKEN_WHEN); }
+WHERE {SQL_NEW_KEYWORD(SQL_TOKEN_WHERE); }
+WITH {SQL_NEW_KEYWORD(SQL_TOKEN_WITH); }
+WITHIN {SQL_NEW_KEYWORD(SQL_TOKEN_WITHIN); }
+WITHOUT {SQL_NEW_KEYWORD(SQL_TOKEN_WITHOUT); }
+WORK {SQL_NEW_KEYWORD(SQL_TOKEN_WORK); }
-YEAR {SQL_NEW_KEYWORD(SQL_TOKEN_YEAR); }
+YEAR {SQL_NEW_KEYWORD(SQL_TOKEN_YEAR); }
-ZONE {SQL_NEW_KEYWORD(SQL_TOKEN_ZONE); }
+ZONE {SQL_NEW_KEYWORD(SQL_TOKEN_ZONE); }
-"<" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_LESS);return SQL_LESS;}
-">" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_GREAT);return SQL_GREAT;}
-"=" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_EQUAL);return SQL_EQUAL;}
-"<=" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_LESSEQ);return SQL_LESSEQ;}
-">=" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_GREATEQ);return SQL_GREATEQ;}
-"<>" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_NOTEQUAL);return SQL_NOTEQUAL;}
-"!=" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_NOTEQUAL);return SQL_NOTEQUAL;}
-"||" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_CONCAT);return SQL_CONCAT;}
+"<" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_LESS);return SQL_LESS;}
+">" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_GREAT);return SQL_GREAT;}
+"=" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_EQUAL);return SQL_EQUAL;}
+"<=" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_LESSEQ);return SQL_LESSEQ;}
+">=" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_GREATEQ);return SQL_GREATEQ;}
+"<>" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_NOTEQUAL);return SQL_NOTEQUAL;}
+"!=" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_NOTEQUAL);return SQL_NOTEQUAL;}
+"||" { SQL_NEW_NODE(::rtl::OUString(SQLyytext,strlen(SQLyytext),RTL_TEXTENCODING_UTF8), SQL_NODE_CONCAT);return SQL_CONCAT;}
[-+*/:(),.;?{}] { return SQLyytext[0]; }
-<SQL>[A-Za-z\200-\277\300-\337\340-\357\360-\367\370-\373\374-\375][A-Za-z\200-\277\300-\337\340-\357\360-\367\370-\373\374-\375_0-9]* {return gatherName( SQLyytext);}
+<SQL>[A-Za-z\200-\277\300-\337\340-\357\360-\367\370-\373\374-\375][A-Za-z\200-\277\300-\337\340-\357\360-\367\370-\373\374-\375_0-9]* {return gatherName( SQLyytext);}
-<SQL>([0-9]+) {SQL_NEW_INTNUM; }
+<SQL>([0-9]+) {SQL_NEW_INTNUM; }
<SQL>("."[0-9]*) |
-<SQL>([0-9]+"."[0-9]*) |
+<SQL>([0-9]+"."[0-9]*) |
<SQL>[0-9]+[eE][+-]?[0-9]+ |
<SQL>[0-9]+"."[0-9]*[eE][+-]?[0-9]+ |
-<SQL>"."[0-9]*[eE][+-]?[0-9]+ {SQL_NEW_APPROXNUM; }
+<SQL>"."[0-9]*[eE][+-]?[0-9]+ {SQL_NEW_APPROXNUM; }
<PREDICATE_GER,PREDICATE_ENG,DATE>[A-Za-z\200-\277\300-\337\340-\357\360-\367\370-\373\374-\375][A-Za-z0-9_%.,*?\200-\277\300-\337\340-\357\360-\367\370-\373\374-\375]* {return gatherNamePre(SQLyytext);}
-<PREDICATE_GER,PREDICATE_ENG>([0-9]+) {SQL_NEW_INTNUM; }
-<PREDICATE_ENG>([0-9]{1,3}(","[0-9]{3})+) {SQL_NEW_INTNUM; }
-<PREDICATE_GER>([0-9]{1,3}("."[0-9]{3})+) {SQL_NEW_INTNUM; }
+<PREDICATE_GER,PREDICATE_ENG>([0-9]+) {SQL_NEW_INTNUM; }
+<PREDICATE_ENG>([0-9]{1,3}(","[0-9]{3})+) {SQL_NEW_INTNUM; }
+<PREDICATE_GER>([0-9]{1,3}("."[0-9]{3})+) {SQL_NEW_INTNUM; }
<PREDICATE_ENG>([0-9]+"."[0-9]+) |
-<PREDICATE_ENG>([0-9]{1,3}(","[0-9]{3})+"."[0-9]+) |
-<PREDICATE_ENG>("."[0-9]+) {SQL_NEW_APPROXNUM; }
+<PREDICATE_ENG>([0-9]{1,3}(","[0-9]{3})+"."[0-9]+) |
+<PREDICATE_ENG>("."[0-9]+) {SQL_NEW_APPROXNUM; }
<PREDICATE_ENG>[0-9]+[eE][+-]?[0-9]+ |
<PREDICATE_ENG>[0-9]+"."[0-9]*[eE][+-]?[0-9]+ |
-<PREDICATE_ENG>"."[0-9]*[eE][+-]?[0-9]+ {SQL_NEW_APPROXNUM; }
+<PREDICATE_ENG>"."[0-9]*[eE][+-]?[0-9]+ {SQL_NEW_APPROXNUM; }
<PREDICATE_GER>([0-9]+","[0-9]+) |
-<PREDICATE_GER>([0-9]{1,3}("."[0-9]{3})+","[0-9]+) |
-<PREDICATE_GER>(","[0-9]+) {SQL_NEW_APPROXNUM; }
+<PREDICATE_GER>([0-9]{1,3}("."[0-9]{3})+","[0-9]+) |
+<PREDICATE_GER>(","[0-9]+) {SQL_NEW_APPROXNUM; }
<PREDICATE_GER>[0-9]+[eE][+-]?[0-9]+ |
<PREDICATE_GER>[0-9]+","[0-9]*[eE][+-]?[0-9]+ |
-<PREDICATE_GER>","[0-9]*[eE][+-]?[0-9]+ {SQL_NEW_APPROXNUM; }
+<PREDICATE_GER>","[0-9]*[eE][+-]?[0-9]+ {SQL_NEW_APPROXNUM; }
<PREDICATE_GER,PREDICATE_ENG>[0-9.,][A-Za-z0-9_.,%]* {return gatherNamePre(SQLyytext);}
-<SQL>\" { return gatherString('\"',0); }
-<SQL>` { return gatherString('`' ,0); }
+<SQL>\" { return gatherString('\"',0); }
+<SQL>` { return gatherString('`' ,0); }
-<PREDICATE_GER,PREDICATE_ENG,DATE,SQL>"[" { return gatherString(']' ,0);}
+<PREDICATE_GER,PREDICATE_ENG,DATE,SQL>"[" { return gatherString(']' ,0);}
-\' { return gatherString('\'',1); }
+\' { return gatherString('\'',1); }
-<PREDICATE_GER,PREDICATE_ENG,DATE># { return gatherString('#' ,2); }
+<PREDICATE_GER,PREDICATE_ENG,DATE># { return gatherString('#' ,2); }
<DATE>[0-9]{1,4}[^ ]*[0-9] |
-<DATE>[0-9]{1,4}[^ ]*[0-9][ ][0-9]{1,4}[^ ]*[0-9] { SQL_NEW_DATE; }
+<DATE>[0-9]{1,4}[^ ]*[0-9][ ][0-9]{1,4}[^ ]*[0-9] { SQL_NEW_DATE; }
-<STRING>["-""+""*""/"":""("")"",""."";""?""{""}"] { return SQLyytext[0]; } /* */
-<STRING>"[" { return gatherString(']' ,0); }
-<STRING>[^ ':["?"]* { return gatherNamePre(SQLyytext); }
+<STRING>["-""+""*""/"":""("")"",""."";""?""{""}"] { return SQLyytext[0]; } /* */
+<STRING>"[" { return gatherString(']' ,0); }
+<STRING>[^ ':["?"]* { return gatherNamePre(SQLyytext); }
\n {}
@@ -490,23 +490,23 @@ ZONE {SQL_NEW_KEYWORD(SQL_TOKEN_ZONE); }
"--".*$ {}
-. {YY_FATAL_ERROR("Invalid symbol"); return SQL_TOKEN_INVALIDSYMBOL;}
+. {YY_FATAL_ERROR("Invalid symbol"); return SQL_TOKEN_INVALIDSYMBOL;}
%%
-// Kludge around a bug (well, Posix incompatibility) in flex 2.5.x
-// http://bugs.debian.org/cgi-bin/bugreport.cgi?archive=no&bug=189332
-#if YY_FLEX_MAJOR_VERSION >= 2 && YY_FLEX_MINOR_VERSION >= 5
-
- #ifndef YY_FLUSH_BUFFER
- #define YY_FLUSH_BUFFER SQLyy_flush_buffer(YY_CURRENT_BUFFER )
- #endif
-
- #ifndef yytext_ptr
- #define yytext_ptr SQLyytext
- #endif
-
-#endif
+// Kludge around a bug (well, Posix incompatibility) in flex 2.5.x
+// http://bugs.debian.org/cgi-bin/bugreport.cgi?archive=no&bug=189332
+#if YY_FLEX_MAJOR_VERSION >= 2 && YY_FLEX_MINOR_VERSION >= 5
+
+ #ifndef YY_FLUSH_BUFFER
+ #define YY_FLUSH_BUFFER SQLyy_flush_buffer(YY_CURRENT_BUFFER )
+ #endif
+
+ #ifndef yytext_ptr
+ #define yytext_ptr SQLyytext
+ #endif
+
+#endif
// Versions of flex apparently differ in whether input() resp. yyinput() returns
// zero or EOF upon end of file:
@@ -515,75 +515,75 @@ inline bool checkeof(int c) { return c == 0 || c == EOF; }
/*
* Read SQL string literal
* Valid strings:
- * '' 'a string' 'quote '' within string'
- * "" "a string" "quote "" within string"
+ * '' 'a string' 'quote '' within string'
+ * "" "a string" "quote "" within string"
* nTyp == 0 -> SQL_NODE_NAME
* nTyp == 1 -> SQL_NODE_STRING
* nTyp == 2 -> SQL_NODE_ACCESS_DATE
*/
sal_Int32 gatherString(int delim, sal_Int32 nTyp)
{
- int ch;
- ::rtl::OStringBuffer sBuffer(256);
-
- while (!checkeof(ch = yyinput()))
- {
- if (ch == delim)
- {
- if ((ch = yyinput()) != delim)
- {
- if (!checkeof(ch))
- unput(ch);
-
- switch(nTyp)
- {
- case 0:
- SQL_NEW_NODE(::rtl::OStringToOUString(sBuffer.makeStringAndClear(),RTL_TEXTENCODING_UTF8), SQL_NODE_NAME);
- return SQL_TOKEN_NAME;
- case 1:
- SQL_NEW_NODE(::rtl::OStringToOUString(sBuffer.makeStringAndClear(),RTL_TEXTENCODING_UTF8), SQL_NODE_STRING);
- return SQL_TOKEN_STRING;
- case 2:
- SQL_NEW_NODE(::rtl::OStringToOUString(sBuffer.makeStringAndClear(),RTL_TEXTENCODING_UTF8), SQL_NODE_ACCESS_DATE);
- return SQL_TOKEN_ACCESS_DATE;
- }
- }
- else
- {
- sBuffer.append(static_cast<sal_Char>(ch));
- }
-
- }
- else if (nTyp != 1 && (ch == '\r' || ch == '\n') )
- break;
- else
- {
- sBuffer.append(static_cast<sal_Char>(ch));
- }
- }
- YY_FATAL_ERROR("Unterminated name string");
- return SQL_TOKEN_INVALIDSYMBOL;
+ int ch;
+ ::rtl::OStringBuffer sBuffer(256);
+
+ while (!checkeof(ch = yyinput()))
+ {
+ if (ch == delim)
+ {
+ if ((ch = yyinput()) != delim)
+ {
+ if (!checkeof(ch))
+ unput(ch);
+
+ switch(nTyp)
+ {
+ case 0:
+ SQL_NEW_NODE(::rtl::OStringToOUString(sBuffer.makeStringAndClear(),RTL_TEXTENCODING_UTF8), SQL_NODE_NAME);
+ return SQL_TOKEN_NAME;
+ case 1:
+ SQL_NEW_NODE(::rtl::OStringToOUString(sBuffer.makeStringAndClear(),RTL_TEXTENCODING_UTF8), SQL_NODE_STRING);
+ return SQL_TOKEN_STRING;
+ case 2:
+ SQL_NEW_NODE(::rtl::OStringToOUString(sBuffer.makeStringAndClear(),RTL_TEXTENCODING_UTF8), SQL_NODE_ACCESS_DATE);
+ return SQL_TOKEN_ACCESS_DATE;
+ }
+ }
+ else
+ {
+ sBuffer.append(static_cast<sal_Char>(ch));
+ }
+
+ }
+ else if (nTyp != 1 && (ch == '\r' || ch == '\n') )
+ break;
+ else
+ {
+ sBuffer.append(static_cast<sal_Char>(ch));
+ }
+ }
+ YY_FATAL_ERROR("Unterminated name string");
+ return SQL_TOKEN_INVALIDSYMBOL;
}
sal_Int32 mapEnumToToken(IParseContext::InternationalKeyCode _eKeyCode )
{
- sal_Int32 nTokenID = 0;
- switch( _eKeyCode )
- {
- case IParseContext::KEY_LIKE: nTokenID = SQL_TOKEN_LIKE; break;
- case IParseContext::KEY_NOT: nTokenID = SQL_TOKEN_NOT; break;
- case IParseContext::KEY_NULL: nTokenID = SQL_TOKEN_NULL; break;
- case IParseContext::KEY_TRUE: nTokenID = SQL_TOKEN_TRUE; break;
- case IParseContext::KEY_FALSE: nTokenID = SQL_TOKEN_FALSE; break;
- case IParseContext::KEY_IS: nTokenID = SQL_TOKEN_IS; break;
- case IParseContext::KEY_BETWEEN: nTokenID = SQL_TOKEN_BETWEEN; break;
- case IParseContext::KEY_OR: nTokenID = SQL_TOKEN_OR; break;
- case IParseContext::KEY_AND: nTokenID = SQL_TOKEN_AND; break;
- case IParseContext::KEY_AVG: nTokenID = SQL_TOKEN_AVG; break;
- case IParseContext::KEY_COUNT: nTokenID = SQL_TOKEN_COUNT; break;
- case IParseContext::KEY_MAX: nTokenID = SQL_TOKEN_MAX; break;
- case IParseContext::KEY_MIN: nTokenID = SQL_TOKEN_MIN; break;
- case IParseContext::KEY_SUM: nTokenID = SQL_TOKEN_SUM; break;
+ sal_Int32 nTokenID = 0;
+ switch( _eKeyCode )
+ {
+ case IParseContext::KEY_LIKE: nTokenID = SQL_TOKEN_LIKE; break;
+ case IParseContext::KEY_NOT: nTokenID = SQL_TOKEN_NOT; break;
+ case IParseContext::KEY_NULL: nTokenID = SQL_TOKEN_NULL; break;
+ case IParseContext::KEY_TRUE: nTokenID = SQL_TOKEN_TRUE; break;
+ case IParseContext::KEY_FALSE: nTokenID = SQL_TOKEN_FALSE; break;
+ case IParseContext::KEY_IS: nTokenID = SQL_TOKEN_IS; break;
+ case IParseContext::KEY_BETWEEN: nTokenID = SQL_TOKEN_BETWEEN; break;
+ case IParseContext::KEY_OR: nTokenID = SQL_TOKEN_OR; break;
+ case IParseContext::KEY_AND: nTokenID = SQL_TOKEN_AND; break;
+ case IParseContext::KEY_AVG: nTokenID = SQL_TOKEN_AVG; break;
+ case IParseContext::KEY_COUNT: nTokenID = SQL_TOKEN_COUNT; break;
+ case IParseContext::KEY_MAX: nTokenID = SQL_TOKEN_MAX; break;
+ case IParseContext::KEY_MIN: nTokenID = SQL_TOKEN_MIN; break;
+ case IParseContext::KEY_SUM: nTokenID = SQL_TOKEN_SUM; break;
case IParseContext::KEY_EVERY: nTokenID = SQL_TOKEN_EVERY; break;
case IParseContext::KEY_ANY: nTokenID = SQL_TOKEN_ANY; break;
case IParseContext::KEY_SOME: nTokenID = SQL_TOKEN_SOME; break;
@@ -594,113 +594,113 @@ sal_Int32 mapEnumToToken(IParseContext::InternationalKeyCode _eKeyCode )
case IParseContext::KEY_COLLECT: nTokenID = SQL_TOKEN_COLLECT; break;
case IParseContext::KEY_FUSION: nTokenID = SQL_TOKEN_FUSION; break;
case IParseContext::KEY_INTERSECTION: nTokenID = SQL_TOKEN_INTERSECTION; break;
- default:
+ default:
OSL_FAIL( "mapEnumToToken: unsupported key!" );
- }
- return nTokenID;
+ }
+ return nTokenID;
}
/*
* Read SQL Name literal
* Valid Names or international keywords:
- * As we have international keywords, we test first on them
+ * As we have international keywords, we test first on them
*/
sal_Int32 gatherName(const sal_Char* text)
{
- sal_Int32 nToken;
- OSL_ENSURE(xxx_pGLOBAL_SQLSCAN,"You forgot to set the scanner!");
- IParseContext::InternationalKeyCode eKeyCode = xxx_pGLOBAL_SQLSCAN->getInternationalTokenID(text);
- switch (eKeyCode)
- {
- case IParseContext::KEY_LIKE:
- case IParseContext::KEY_NOT:
- case IParseContext::KEY_NULL:
- case IParseContext::KEY_TRUE:
- case IParseContext::KEY_FALSE:
- case IParseContext::KEY_IS:
- case IParseContext::KEY_BETWEEN:
- case IParseContext::KEY_OR:
- case IParseContext::KEY_AND:
- case IParseContext::KEY_COUNT:
- case IParseContext::KEY_AVG:
- case IParseContext::KEY_MAX:
- case IParseContext::KEY_MIN:
- case IParseContext::KEY_SUM:
- case IParseContext::KEY_EVERY:
- case IParseContext::KEY_ANY:
- case IParseContext::KEY_SOME:
- case IParseContext::KEY_STDDEV_POP:
+ sal_Int32 nToken;
+ OSL_ENSURE(xxx_pGLOBAL_SQLSCAN,"You forgot to set the scanner!");
+ IParseContext::InternationalKeyCode eKeyCode = xxx_pGLOBAL_SQLSCAN->getInternationalTokenID(text);
+ switch (eKeyCode)
+ {
+ case IParseContext::KEY_LIKE:
+ case IParseContext::KEY_NOT:
+ case IParseContext::KEY_NULL:
+ case IParseContext::KEY_TRUE:
+ case IParseContext::KEY_FALSE:
+ case IParseContext::KEY_IS:
+ case IParseContext::KEY_BETWEEN:
+ case IParseContext::KEY_OR:
+ case IParseContext::KEY_AND:
+ case IParseContext::KEY_COUNT:
+ case IParseContext::KEY_AVG:
+ case IParseContext::KEY_MAX:
+ case IParseContext::KEY_MIN:
+ case IParseContext::KEY_SUM:
+ case IParseContext::KEY_EVERY:
+ case IParseContext::KEY_ANY:
+ case IParseContext::KEY_SOME:
+ case IParseContext::KEY_STDDEV_POP:
case IParseContext::KEY_STDDEV_SAMP:
- case IParseContext::KEY_VAR_SAMP:
- case IParseContext::KEY_VAR_POP:
- case IParseContext::KEY_COLLECT:
- case IParseContext::KEY_FUSION:
- case IParseContext::KEY_INTERSECTION:
- nToken = mapEnumToToken(eKeyCode);
- SQL_NEW_KEYWORD(nToken);
- break;
- default:
- SQL_NEW_NODE(::rtl::OUString(text,strlen(text),RTL_TEXTENCODING_UTF8), SQL_NODE_NAME);
- return SQL_TOKEN_NAME;
- }
+ case IParseContext::KEY_VAR_SAMP:
+ case IParseContext::KEY_VAR_POP:
+ case IParseContext::KEY_COLLECT:
+ case IParseContext::KEY_FUSION:
+ case IParseContext::KEY_INTERSECTION:
+ nToken = mapEnumToToken(eKeyCode);
+ SQL_NEW_KEYWORD(nToken);
+ break;
+ default:
+ SQL_NEW_NODE(::rtl::OUString(text,strlen(text),RTL_TEXTENCODING_UTF8), SQL_NODE_NAME);
+ return SQL_TOKEN_NAME;
+ }
}
/**
Read SQL Name literal for predicate check
Valid Names or internatioanl keywords:
- As we have international keywords, we test first on them
+ As we have international keywords, we test first on them
*/
sal_Int32 gatherNamePre(const sal_Char* text)
-{
- sal_Int32 nToken;
- OSL_ENSURE(xxx_pGLOBAL_SQLSCAN,"You forgot to set the scanner!");
- IParseContext::InternationalKeyCode eKeyCode = xxx_pGLOBAL_SQLSCAN->getInternationalTokenID(text);
- switch (eKeyCode)
- {
- case IParseContext::KEY_LIKE:
- case IParseContext::KEY_NOT:
- case IParseContext::KEY_NULL:
- case IParseContext::KEY_TRUE:
- case IParseContext::KEY_FALSE:
- case IParseContext::KEY_IS:
- case IParseContext::KEY_BETWEEN:
- case IParseContext::KEY_OR:
- case IParseContext::KEY_AND:
- case IParseContext::KEY_COUNT:
- case IParseContext::KEY_AVG:
- case IParseContext::KEY_MAX:
- case IParseContext::KEY_MIN:
- case IParseContext::KEY_SUM:
- case IParseContext::KEY_EVERY:
- case IParseContext::KEY_ANY:
- case IParseContext::KEY_SOME:
- case IParseContext::KEY_STDDEV_POP:
+{
+ sal_Int32 nToken;
+ OSL_ENSURE(xxx_pGLOBAL_SQLSCAN,"You forgot to set the scanner!");
+ IParseContext::InternationalKeyCode eKeyCode = xxx_pGLOBAL_SQLSCAN->getInternationalTokenID(text);
+ switch (eKeyCode)
+ {
+ case IParseContext::KEY_LIKE:
+ case IParseContext::KEY_NOT:
+ case IParseContext::KEY_NULL:
+ case IParseContext::KEY_TRUE:
+ case IParseContext::KEY_FALSE:
+ case IParseContext::KEY_IS:
+ case IParseContext::KEY_BETWEEN:
+ case IParseContext::KEY_OR:
+ case IParseContext::KEY_AND:
+ case IParseContext::KEY_COUNT:
+ case IParseContext::KEY_AVG:
+ case IParseContext::KEY_MAX:
+ case IParseContext::KEY_MIN:
+ case IParseContext::KEY_SUM:
+ case IParseContext::KEY_EVERY:
+ case IParseContext::KEY_ANY:
+ case IParseContext::KEY_SOME:
+ case IParseContext::KEY_STDDEV_POP:
case IParseContext::KEY_STDDEV_SAMP:
- case IParseContext::KEY_VAR_SAMP:
- case IParseContext::KEY_VAR_POP:
- case IParseContext::KEY_COLLECT:
- case IParseContext::KEY_FUSION:
+ case IParseContext::KEY_VAR_SAMP:
+ case IParseContext::KEY_VAR_POP:
+ case IParseContext::KEY_COLLECT:
+ case IParseContext::KEY_FUSION:
case IParseContext::KEY_INTERSECTION:
- nToken = mapEnumToToken(eKeyCode);
- SQL_NEW_KEYWORD(nToken);
- break;
- default:
- // we need a special handling for parameter
- {
- ::rtl::OString sStmt = xxx_pGLOBAL_SQLSCAN->getStatement();
- sal_Int32 nLength = strlen(text);
- sal_Int32 nPos = xxx_pGLOBAL_SQLSCAN->GetCurrentPos() - nLength - 2;
- if (sStmt.getStr()[nPos] == ':')
- {
- SQL_NEW_NODE(::rtl::OUString(text,nLength,RTL_TEXTENCODING_UTF8), SQL_NODE_NAME);
- nToken = SQL_TOKEN_NAME;
- }
- else
- {
- SQL_NEW_NODE(::rtl::OUString(text,nLength,RTL_TEXTENCODING_UTF8), SQL_NODE_STRING);
- nToken = SQL_TOKEN_STRING;
- }
- }
- }
- return nToken;
+ nToken = mapEnumToToken(eKeyCode);
+ SQL_NEW_KEYWORD(nToken);
+ break;
+ default:
+ // we need a special handling for parameter
+ {
+ ::rtl::OString sStmt = xxx_pGLOBAL_SQLSCAN->getStatement();
+ sal_Int32 nLength = strlen(text);
+ sal_Int32 nPos = xxx_pGLOBAL_SQLSCAN->GetCurrentPos() - nLength - 2;
+ if (sStmt.getStr()[nPos] == ':')
+ {
+ SQL_NEW_NODE(::rtl::OUString(text,nLength,RTL_TEXTENCODING_UTF8), SQL_NODE_NAME);
+ nToken = SQL_TOKEN_NAME;
+ }
+ else
+ {
+ SQL_NEW_NODE(::rtl::OUString(text,nLength,RTL_TEXTENCODING_UTF8), SQL_NODE_STRING);
+ nToken = SQL_TOKEN_STRING;
+ }
+ }
+ }
+ return nToken;
}
using namespace connectivity;
@@ -708,12 +708,12 @@ using namespace connectivity;
static bool IN_SQLyyerror;
//------------------------------------------------------------------------------
OSQLScanner::OSQLScanner()
- : m_pContext(NULL)
- , m_nCurrentPos(0)
- , m_bInternational(sal_False)
- , m_nRule(0) // 0 is INITIAL
+ : m_pContext(NULL)
+ , m_nCurrentPos(0)
+ , m_bInternational(sal_False)
+ , m_nRule(0) // 0 is INITIAL
{
- IN_SQLyyerror = false;
+ IN_SQLyyerror = false;
}
//------------------------------------------------------------------------------
@@ -724,52 +724,52 @@ OSQLScanner::~OSQLScanner()
void OSQLScanner::SQLyyerror(sal_Char *fmt)
{
- if(IN_SQLyyerror)
- return;
- IN_SQLyyerror = true;
-
- OSL_ENSURE(m_pContext, "OSQLScanner::SQLyyerror: No Context set");
- m_sErrorMessage = ::rtl::OUString(fmt,strlen(fmt),RTL_TEXTENCODING_UTF8);
- if (m_nCurrentPos < m_sStatement.getLength())
- {
- m_sErrorMessage += ::rtl::OUString(": ");
-
- ::rtl::OUString aError;
- static sal_Int32 BUFFERSIZE = 256;
- static sal_Char* Buffer = 0;
- if(!Buffer)
- Buffer = new sal_Char[BUFFERSIZE];
-
- sal_Char *s = Buffer;
- sal_Int32 nPos = 1;
- int ch = SQLyytext ? (SQLyytext[0] == 0 ? ' ' : SQLyytext[0]): ' ';
- *s++ = ch;
- while (!checkeof(ch = yyinput()))
- {
- if (ch == ' ')
- {
- if ((ch = yyinput()) != ' ')
- {
- if (!checkeof(ch))
- unput(ch);
- }
- *s = '\0';
- aError = ::rtl::OUString(Buffer,nPos,RTL_TEXTENCODING_UTF8);
- break;
- }
- else
- {
- *s++ = ch;
- if (++nPos == BUFFERSIZE)
- {
- ::rtl::OString aBuf(Buffer);
- delete[] Buffer;
- BUFFERSIZE *=2;
- Buffer = new sal_Char[BUFFERSIZE];
- for(sal_Int32 i=0;i<aBuf.getLength();++i,++Buffer)
- *Buffer = aBuf.getStr()[i];
- s = &Buffer[nPos];
- }
+ if(IN_SQLyyerror)
+ return;
+ IN_SQLyyerror = true;
+
+ OSL_ENSURE(m_pContext, "OSQLScanner::SQLyyerror: No Context set");
+ m_sErrorMessage = ::rtl::OUString(fmt,strlen(fmt),RTL_TEXTENCODING_UTF8);
+ if (m_nCurrentPos < m_sStatement.getLength())
+ {
+ m_sErrorMessage += ::rtl::OUString(": ");
+
+ ::rtl::OUString aError;
+ static sal_Int32 BUFFERSIZE = 256;
+ static sal_Char* Buffer = 0;
+ if(!Buffer)
+ Buffer = new sal_Char[BUFFERSIZE];
+
+ sal_Char *s = Buffer;
+ sal_Int32 nPos = 1;
+ int ch = SQLyytext ? (SQLyytext[0] == 0 ? ' ' : SQLyytext[0]): ' ';
+ *s++ = ch;
+ while (!checkeof(ch = yyinput()))
+ {
+ if (ch == ' ')
+ {
+ if ((ch = yyinput()) != ' ')
+ {
+ if (!checkeof(ch))
+ unput(ch);
+ }
+ *s = '\0';
+ aError = ::rtl::OUString(Buffer,nPos,RTL_TEXTENCODING_UTF8);
+ break;
+ }
+ else
+ {
+ *s++ = ch;
+ if (++nPos == BUFFERSIZE)
+ {
+ ::rtl::OString aBuf(Buffer);
+ delete[] Buffer;
+ BUFFERSIZE *=2;
+ Buffer = new sal_Char[BUFFERSIZE];
+ for(sal_Int32 i=0;i<aBuf.getLength();++i,++Buffer)
+ *Buffer = aBuf.getStr()[i];
+ s = &Buffer[nPos];
+ }
}
}
m_sErrorMessage += aError;
@@ -783,14 +783,14 @@ void OSQLScanner::SQLyyerror(sal_Char *fmt)
//------------------------------------------------------------------------------
void OSQLScanner::prepareScan(const ::rtl::OUString & rNewStatement, const IParseContext* pContext, sal_Bool bInternational)
{
- YY_FLUSH_BUFFER;
- BEGIN(m_nRule);
-
- m_sErrorMessage = ::rtl::OUString();
- m_sStatement = ::rtl::OUStringToOString(rNewStatement, RTL_TEXTENCODING_UTF8);
- m_nCurrentPos = 0;
- m_bInternational = bInternational;
- m_pContext = pContext;
+ YY_FLUSH_BUFFER;
+ BEGIN(m_nRule);
+
+ m_sErrorMessage = ::rtl::OUString();
+ m_sStatement = ::rtl::OUStringToOString(rNewStatement, RTL_TEXTENCODING_UTF8);
+ m_nCurrentPos = 0;
+ m_bInternational = bInternational;
+ m_pContext = pContext;
}
//------------------------------------------------------------------------------
@@ -803,9 +803,9 @@ sal_Int32 OSQLScanner::SQLyygetc(void)
//------------------------------------------------------------------------------
IParseContext::InternationalKeyCode OSQLScanner::getInternationalTokenID(const sal_Char* sToken) const
-{
- OSL_ENSURE(m_pContext, "OSQLScanner::getInternationalTokenID: No Context set");
- return (m_bInternational) ? m_pContext->getIntlKeyCode(::rtl::OString(sToken) ) : IParseContext::KEY_NONE;
+{
+ OSL_ENSURE(m_pContext, "OSQLScanner::getInternationalTokenID: No Context set");
+ return (m_bInternational) ? m_pContext->getIntlKeyCode(::rtl::OString(sToken) ) : IParseContext::KEY_NONE;
}
// -------------------------------------------------------------------------
sal_Int32 OSQLScanner::GetCurrentRule() const { return m_nRule; }