From 0315c676fcc82cf9150373634e33c4f86f0ef062 Mon Sep 17 00:00:00 2001 From: brandonspark Date: Tue, 12 Nov 2024 09:10:15 -0800 Subject: [PATCH] ellipsis metavariables too --- .../src/semgrep-swift/grammar.js | 3 ++- .../src/semgrep-swift/test/corpus/semgrep.txt | 25 +++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/lang/semgrep-grammars/src/semgrep-swift/grammar.js b/lang/semgrep-grammars/src/semgrep-swift/grammar.js index b2a5508..3b5276e 100644 --- a/lang/semgrep-grammars/src/semgrep-swift/grammar.js +++ b/lang/semgrep-grammars/src/semgrep-swift/grammar.js @@ -86,7 +86,8 @@ module.exports = grammar(base_grammar, { parameter: ($, previous) => choice ( previous, - $.semgrep_ellipsis + $.semgrep_ellipsis, + $.semgrep_ellipsis_metavar ) } }); diff --git a/lang/semgrep-grammars/src/semgrep-swift/test/corpus/semgrep.txt b/lang/semgrep-grammars/src/semgrep-swift/test/corpus/semgrep.txt index 5844256..f55c958 100644 --- a/lang/semgrep-grammars/src/semgrep-swift/test/corpus/semgrep.txt +++ b/lang/semgrep-grammars/src/semgrep-swift/test/corpus/semgrep.txt @@ -50,6 +50,31 @@ func $F(..., $X: $T, ...) { (statements (fully_open_range))))) +================================================================================ +Parameter Metavariable Ellipsis +================================================================================ + +func $F($...ARGS1, $X: $T, $...ARGS2) { + ... +} + +-------------------------------------------------------------------------------- + +(source_file + (function_declaration + (simple_identifier) + (parameter + (semgrep_ellipsis_metavar)) + (parameter + (simple_identifier) + (user_type + (type_identifier))) + (parameter + (semgrep_ellipsis_metavar)) + (function_body + (statements + (fully_open_range))))) + ================================================================================ Argument Ellipsis ================================================================================