Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit c6a36a5

Browse files
committed
Ruby: regenerate dbscheme and library
1 parent bfbc9fe commit c6a36a5

2 files changed

Lines changed: 58 additions & 19 deletions

File tree

ruby/ql/lib/codeql/ruby/ast/internal/TreeSitter.qll

Lines changed: 28 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,8 @@ module Ruby {
5959

6060
class UnderscoreMethodName extends @ruby_underscore_method_name, AstNode { }
6161

62+
class UnderscoreNonlocalVariable extends @ruby_underscore_nonlocal_variable, AstNode { }
63+
6264
class UnderscorePatternConstant extends @ruby_underscore_pattern_constant, AstNode { }
6365

6466
class UnderscorePatternExpr extends @ruby_underscore_pattern_expr, AstNode { }
@@ -365,13 +367,13 @@ module Ruby {
365367
override string getAPrimaryQlClass() { result = "BlockArgument" }
366368

367369
/** Gets the location of this element. */
368-
override L::Location getLocation() { ruby_block_argument_def(this, _, result) }
370+
override L::Location getLocation() { ruby_block_argument_def(this, result) }
369371

370372
/** Gets the child of this node. */
371-
UnderscoreArg getChild() { ruby_block_argument_def(this, result, _) }
373+
UnderscoreArg getChild() { ruby_block_argument_child(this, result) }
372374

373375
/** Gets a field or child node of this node. */
374-
override AstNode getAFieldOrChild() { ruby_block_argument_def(this, result, _) }
376+
override AstNode getAFieldOrChild() { ruby_block_argument_child(this, result) }
375377
}
376378

377379
/** A class representing `block_parameter` nodes. */
@@ -380,13 +382,13 @@ module Ruby {
380382
override string getAPrimaryQlClass() { result = "BlockParameter" }
381383

382384
/** Gets the location of this element. */
383-
override L::Location getLocation() { ruby_block_parameter_def(this, _, result) }
385+
override L::Location getLocation() { ruby_block_parameter_def(this, result) }
384386

385387
/** Gets the node corresponding to the field `name`. */
386-
Identifier getName() { ruby_block_parameter_def(this, result, _) }
388+
Identifier getName() { ruby_block_parameter_name(this, result) }
387389

388390
/** Gets a field or child node of this node. */
389-
override AstNode getAFieldOrChild() { ruby_block_parameter_def(this, result, _) }
391+
override AstNode getAFieldOrChild() { ruby_block_parameter_name(this, result) }
390392
}
391393

392394
/** A class representing `block_parameters` nodes. */
@@ -806,6 +808,21 @@ module Ruby {
806808
override AstNode getAFieldOrChild() { ruby_exceptions_child(this, _, result) }
807809
}
808810

811+
/** A class representing `expression_reference_pattern` nodes. */
812+
class ExpressionReferencePattern extends @ruby_expression_reference_pattern, AstNode {
813+
/** Gets the name of the primary QL class for this element. */
814+
override string getAPrimaryQlClass() { result = "ExpressionReferencePattern" }
815+
816+
/** Gets the location of this element. */
817+
override L::Location getLocation() { ruby_expression_reference_pattern_def(this, _, result) }
818+
819+
/** Gets the node corresponding to the field `value`. */
820+
UnderscoreExpression getValue() { ruby_expression_reference_pattern_def(this, result, _) }
821+
822+
/** Gets a field or child node of this node. */
823+
override AstNode getAFieldOrChild() { ruby_expression_reference_pattern_def(this, result, _) }
824+
}
825+
809826
/** A class representing `false` tokens. */
810827
class False extends @ruby_token_false, Token {
811828
/** Gets the name of the primary QL class for this element. */
@@ -1392,17 +1409,17 @@ module Ruby {
13921409
override string getAPrimaryQlClass() { result = "Pair" }
13931410

13941411
/** Gets the location of this element. */
1395-
override L::Location getLocation() { ruby_pair_def(this, _, _, result) }
1412+
override L::Location getLocation() { ruby_pair_def(this, _, result) }
13961413

13971414
/** Gets the node corresponding to the field `key`. */
1398-
AstNode getKey() { ruby_pair_def(this, result, _, _) }
1415+
AstNode getKey() { ruby_pair_def(this, result, _) }
13991416

14001417
/** Gets the node corresponding to the field `value`. */
1401-
UnderscoreArg getValue() { ruby_pair_def(this, _, result, _) }
1418+
UnderscoreArg getValue() { ruby_pair_value(this, result) }
14021419

14031420
/** Gets a field or child node of this node. */
14041421
override AstNode getAFieldOrChild() {
1405-
ruby_pair_def(this, result, _, _) or ruby_pair_def(this, _, result, _)
1422+
ruby_pair_def(this, result, _) or ruby_pair_value(this, result)
14061423
}
14071424
}
14081425

@@ -2041,7 +2058,7 @@ module Ruby {
20412058
override L::Location getLocation() { ruby_variable_reference_pattern_def(this, _, result) }
20422059

20432060
/** Gets the node corresponding to the field `name`. */
2044-
Identifier getName() { ruby_variable_reference_pattern_def(this, result, _) }
2061+
AstNode getName() { ruby_variable_reference_pattern_def(this, result, _) }
20452062

20462063
/** Gets a field or child node of this node. */
20472064
override AstNode getAFieldOrChild() { ruby_variable_reference_pattern_def(this, result, _) }

ruby/ql/lib/ruby.dbscheme

Lines changed: 30 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -56,13 +56,15 @@ case @diagnostic.severity of
5656

5757
@ruby_underscore_lhs = @ruby_call | @ruby_element_reference | @ruby_scope_resolution | @ruby_token_false | @ruby_token_nil | @ruby_token_true | @ruby_underscore_variable
5858

59-
@ruby_underscore_method_name = @ruby_delimited_symbol | @ruby_setter | @ruby_token_class_variable | @ruby_token_constant | @ruby_token_global_variable | @ruby_token_identifier | @ruby_token_instance_variable | @ruby_token_operator | @ruby_token_simple_symbol
59+
@ruby_underscore_method_name = @ruby_delimited_symbol | @ruby_setter | @ruby_token_constant | @ruby_token_identifier | @ruby_token_operator | @ruby_token_simple_symbol | @ruby_underscore_nonlocal_variable
60+
61+
@ruby_underscore_nonlocal_variable = @ruby_token_class_variable | @ruby_token_global_variable | @ruby_token_instance_variable
6062

6163
@ruby_underscore_pattern_constant = @ruby_scope_resolution | @ruby_token_constant
6264

6365
@ruby_underscore_pattern_expr = @ruby_alternative_pattern | @ruby_as_pattern | @ruby_underscore_pattern_expr_basic
6466

65-
@ruby_underscore_pattern_expr_basic = @ruby_array_pattern | @ruby_find_pattern | @ruby_hash_pattern | @ruby_parenthesized_pattern | @ruby_range | @ruby_token_identifier | @ruby_underscore_pattern_constant | @ruby_underscore_pattern_primitive | @ruby_variable_reference_pattern
67+
@ruby_underscore_pattern_expr_basic = @ruby_array_pattern | @ruby_expression_reference_pattern | @ruby_find_pattern | @ruby_hash_pattern | @ruby_parenthesized_pattern | @ruby_range | @ruby_token_identifier | @ruby_underscore_pattern_constant | @ruby_underscore_pattern_primitive | @ruby_variable_reference_pattern
6668

6769
@ruby_underscore_pattern_primitive = @ruby_delimited_symbol | @ruby_lambda | @ruby_regex | @ruby_string__ | @ruby_string_array | @ruby_symbol_array | @ruby_token_encoding | @ruby_token_false | @ruby_token_file | @ruby_token_line | @ruby_token_nil | @ruby_token_self | @ruby_token_simple_symbol | @ruby_token_true | @ruby_unary | @ruby_underscore_simple_numeric
6870

@@ -74,7 +76,7 @@ case @diagnostic.severity of
7476

7577
@ruby_underscore_statement = @ruby_alias | @ruby_begin_block | @ruby_end_block | @ruby_if_modifier | @ruby_rescue_modifier | @ruby_undef | @ruby_underscore_expression | @ruby_unless_modifier | @ruby_until_modifier | @ruby_while_modifier
7678

77-
@ruby_underscore_variable = @ruby_token_class_variable | @ruby_token_constant | @ruby_token_global_variable | @ruby_token_identifier | @ruby_token_instance_variable | @ruby_token_self | @ruby_token_super
79+
@ruby_underscore_variable = @ruby_token_constant | @ruby_token_identifier | @ruby_token_self | @ruby_token_super | @ruby_underscore_nonlocal_variable
7880

7981
ruby_alias_def(
8082
unique int id: @ruby_alias,
@@ -272,15 +274,23 @@ ruby_block_def(
272274
int loc: @location ref
273275
);
274276

277+
ruby_block_argument_child(
278+
unique int ruby_block_argument: @ruby_block_argument ref,
279+
unique int child: @ruby_underscore_arg ref
280+
);
281+
275282
ruby_block_argument_def(
276283
unique int id: @ruby_block_argument,
277-
int child: @ruby_underscore_arg ref,
278284
int loc: @location ref
279285
);
280286

287+
ruby_block_parameter_name(
288+
unique int ruby_block_parameter: @ruby_block_parameter ref,
289+
unique int name: @ruby_token_identifier ref
290+
);
291+
281292
ruby_block_parameter_def(
282293
unique int id: @ruby_block_parameter,
283-
int name: @ruby_token_identifier ref,
284294
int loc: @location ref
285295
);
286296

@@ -584,6 +594,12 @@ ruby_exceptions_def(
584594
int loc: @location ref
585595
);
586596

597+
ruby_expression_reference_pattern_def(
598+
unique int id: @ruby_expression_reference_pattern,
599+
int value: @ruby_underscore_expression ref,
600+
int loc: @location ref
601+
);
602+
587603
ruby_find_pattern_class(
588604
unique int ruby_find_pattern: @ruby_find_pattern ref,
589605
unique int class: @ruby_underscore_pattern_constant ref
@@ -905,10 +921,14 @@ ruby_optional_parameter_def(
905921

906922
@ruby_pair_key_type = @ruby_string__ | @ruby_token_hash_key_symbol | @ruby_underscore_arg
907923

924+
ruby_pair_value(
925+
unique int ruby_pair: @ruby_pair ref,
926+
unique int value: @ruby_underscore_arg ref
927+
);
928+
908929
ruby_pair_def(
909930
unique int id: @ruby_pair,
910931
int key__: @ruby_pair_key_type ref,
911-
int value: @ruby_underscore_arg ref,
912932
int loc: @location ref
913933
);
914934

@@ -1308,9 +1328,11 @@ ruby_until_modifier_def(
13081328
int loc: @location ref
13091329
);
13101330

1331+
@ruby_variable_reference_pattern_name_type = @ruby_token_identifier | @ruby_underscore_nonlocal_variable
1332+
13111333
ruby_variable_reference_pattern_def(
13121334
unique int id: @ruby_variable_reference_pattern,
1313-
int name: @ruby_token_identifier ref,
1335+
int name: @ruby_variable_reference_pattern_name_type ref,
13141336
int loc: @location ref
13151337
);
13161338

@@ -1398,7 +1420,7 @@ case @ruby_token.kind of
13981420
;
13991421

14001422

1401-
@ruby_ast_node = @ruby_alias | @ruby_alternative_pattern | @ruby_argument_list | @ruby_array | @ruby_array_pattern | @ruby_as_pattern | @ruby_assignment | @ruby_bare_string | @ruby_bare_symbol | @ruby_begin | @ruby_begin_block | @ruby_binary | @ruby_block | @ruby_block_argument | @ruby_block_parameter | @ruby_block_parameters | @ruby_break | @ruby_call | @ruby_case__ | @ruby_case_match | @ruby_chained_string | @ruby_class | @ruby_conditional | @ruby_delimited_symbol | @ruby_destructured_left_assignment | @ruby_destructured_parameter | @ruby_do | @ruby_do_block | @ruby_element_reference | @ruby_else | @ruby_elsif | @ruby_end_block | @ruby_ensure | @ruby_exception_variable | @ruby_exceptions | @ruby_find_pattern | @ruby_for | @ruby_hash | @ruby_hash_pattern | @ruby_hash_splat_argument | @ruby_hash_splat_parameter | @ruby_heredoc_body | @ruby_if | @ruby_if_guard | @ruby_if_modifier | @ruby_in | @ruby_in_clause | @ruby_interpolation | @ruby_keyword_parameter | @ruby_keyword_pattern | @ruby_lambda | @ruby_lambda_parameters | @ruby_left_assignment_list | @ruby_method | @ruby_method_parameters | @ruby_module | @ruby_next | @ruby_operator_assignment | @ruby_optional_parameter | @ruby_pair | @ruby_parenthesized_pattern | @ruby_parenthesized_statements | @ruby_pattern | @ruby_program | @ruby_range | @ruby_rational | @ruby_redo | @ruby_regex | @ruby_rescue | @ruby_rescue_modifier | @ruby_rest_assignment | @ruby_retry | @ruby_return | @ruby_right_assignment_list | @ruby_scope_resolution | @ruby_setter | @ruby_singleton_class | @ruby_singleton_method | @ruby_splat_argument | @ruby_splat_parameter | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_superclass | @ruby_symbol_array | @ruby_then | @ruby_token | @ruby_unary | @ruby_undef | @ruby_unless | @ruby_unless_guard | @ruby_unless_modifier | @ruby_until | @ruby_until_modifier | @ruby_variable_reference_pattern | @ruby_when | @ruby_while | @ruby_while_modifier | @ruby_yield
1423+
@ruby_ast_node = @ruby_alias | @ruby_alternative_pattern | @ruby_argument_list | @ruby_array | @ruby_array_pattern | @ruby_as_pattern | @ruby_assignment | @ruby_bare_string | @ruby_bare_symbol | @ruby_begin | @ruby_begin_block | @ruby_binary | @ruby_block | @ruby_block_argument | @ruby_block_parameter | @ruby_block_parameters | @ruby_break | @ruby_call | @ruby_case__ | @ruby_case_match | @ruby_chained_string | @ruby_class | @ruby_conditional | @ruby_delimited_symbol | @ruby_destructured_left_assignment | @ruby_destructured_parameter | @ruby_do | @ruby_do_block | @ruby_element_reference | @ruby_else | @ruby_elsif | @ruby_end_block | @ruby_ensure | @ruby_exception_variable | @ruby_exceptions | @ruby_expression_reference_pattern | @ruby_find_pattern | @ruby_for | @ruby_hash | @ruby_hash_pattern | @ruby_hash_splat_argument | @ruby_hash_splat_parameter | @ruby_heredoc_body | @ruby_if | @ruby_if_guard | @ruby_if_modifier | @ruby_in | @ruby_in_clause | @ruby_interpolation | @ruby_keyword_parameter | @ruby_keyword_pattern | @ruby_lambda | @ruby_lambda_parameters | @ruby_left_assignment_list | @ruby_method | @ruby_method_parameters | @ruby_module | @ruby_next | @ruby_operator_assignment | @ruby_optional_parameter | @ruby_pair | @ruby_parenthesized_pattern | @ruby_parenthesized_statements | @ruby_pattern | @ruby_program | @ruby_range | @ruby_rational | @ruby_redo | @ruby_regex | @ruby_rescue | @ruby_rescue_modifier | @ruby_rest_assignment | @ruby_retry | @ruby_return | @ruby_right_assignment_list | @ruby_scope_resolution | @ruby_setter | @ruby_singleton_class | @ruby_singleton_method | @ruby_splat_argument | @ruby_splat_parameter | @ruby_string__ | @ruby_string_array | @ruby_subshell | @ruby_superclass | @ruby_symbol_array | @ruby_then | @ruby_token | @ruby_unary | @ruby_undef | @ruby_unless | @ruby_unless_guard | @ruby_unless_modifier | @ruby_until | @ruby_until_modifier | @ruby_variable_reference_pattern | @ruby_when | @ruby_while | @ruby_while_modifier | @ruby_yield
14021424

14031425
@ruby_ast_node_parent = @file | @ruby_ast_node
14041426

0 commit comments

Comments
 (0)