diff --git a/examples/advanced/create_ast.py b/examples/advanced/create_ast.py index 537e8a8..95ce520 100644 --- a/examples/advanced/create_ast.py +++ b/examples/advanced/create_ast.py @@ -15,6 +15,7 @@ from typing import List from dataclasses import dataclass from lark import Lark, ast_utils, Transformer, v_args +from lark.tree import Meta this_module = sys.modules[__name__] @@ -31,7 +32,9 @@ class _Statement(_Ast): pass @dataclass -class Value(_Ast): +class Value(_Ast, ast_utils.WithMeta): + "Uses WithMeta to include line-number metadata in the meta attribute" + meta: Meta value: object @dataclass diff --git a/lark/ast_utils.py b/lark/ast_utils.py index b5463a2..0c03d45 100644 --- a/lark/ast_utils.py +++ b/lark/ast_utils.py @@ -19,15 +19,17 @@ class AsList(object): Subclasses will be instanciated with the parse results as a single list, instead of as arguments. """ -def camel_to_snake(name): - return re.sub(r'(?