Почему последний оператор игнорируется в ast-grep/tree-sitter с C++ в complex_statement?C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Почему последний оператор игнорируется в ast-grep/tree-sitter с C++ в complex_statement?

Сообщение Anonymous »

На этой игровой площадке последний оператор всегда игнорируется и не фиксируется. Why is this?
https://ast-grep.github.io/playground.h ... xuICB9In0=
Test C++ code:

Код: Выделить всё

A::A()
: base::Class(a, b, c) {
a;
b;
c;
}
Правила тестирования:

Код: Выделить всё

id: testbase_initializer
language: CPP
rule:
pattern:
selector: compound_statement
context: "A::A() : foo() { $$$BODYSTUFF }"
fix: |-
{
f();
$$$BODYSTUFF;
}
Снято BODYSTUFF: a;b;. Но c; в нем нет. Почему? Для справки, несокращенный тестовый пример:

Код: Выделить всё

id: testbase_initializer
language: CPP
rule:
pattern:
selector: compound_statement
context: "A::A() : foo() { $$$BODYSTUFF }"

follows:
kind: field_initializer_list
has:
pattern:
selector: field_initializer
context: "A::A() : TestBase($NAME, $DETAILS, $ID) { }"
fix: |-
{
setName($NAME);
setId($ID);

$$$BODYSTUFF
}
И предполагалось переместить часть инициализатора базового класса в тело. Но исправление всегда отбрасывало последний оператор тела!

Подробнее здесь: https://stackoverflow.com/questions/786 ... n-compound
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Почему последний оператор игнорируется в ast-grep/tree-sitter с C++ в complex_statement?
    Anonymous » » в форуме C++
    0 Ответы
    30 Просмотры
    Последнее сообщение Anonymous
  • Преобразование Cxx.jl между Julia Complex и std::complex
    Anonymous » » в форуме C++
    0 Ответы
    34 Просмотры
    Последнее сообщение Anonymous
  • Как добавить недостающий импорт в модуль Python с помощью Ast-Grep?
    Anonymous » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Аннотация Java - как изменить AST (Access com.sun.tools.javac.tree Package)?
    Anonymous » » в форуме JAVA
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Аннотация Java - как изменить AST (Access com.sun.tools.javac.tree Package)?
    Anonymous » » в форуме JAVA
    0 Ответы
    1 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»