Recent Commits to lark:master

  • 24/04/2026 2:22

    Fix type hint of @v_args() decorator

    Fix type hint of @v_args() decorator
    
    Before, the test script below fails Pyright's type-checking:
    
    ```
    error: "assert_type" mismatch: expected "str" but received "Any | Unknown" (reportAssertTypeFailure)
    ```
    
    (VSCode's python extension, Pylance, uses Pyright internally)
    
    Test script:
    
    ```python
    import sys
    
    from lark import Transformer, Token, Tree, v_args
    
    if sys.version_info < (3, 11):
        from typing_extensions import assert_type, reveal_type
    else:
        from typing import assert_type, reveal_type
    
    @v_args()
    class Foo(Transformer[Token, str]):
        def __init__(self):
            super().__init__()
    
        def foo(self, meta, args):
            return 'baz'
    
    bar = Foo().transform(Tree('foo', []))
    
    assert_type(bar, str)
    ```
    
    I've not added this test because it would require adding pyright as a
    second typechecker dependency when the project already uses mypy
    
    fix: #1579

Log in