Skip to content

Predicates works in a very weird manner #7

@ksmolyanin

Description

@ksmolyanin

Predicates works in a very weird manner. For example this doesn't work as expected:
static_content_symbol: ( / [^\{] / | "{" !"{" | "{" !"*" )+
but this (which is logically equivalent) works fine:
static_content_symbol: ( / [^\{] / | "{" !( "{" | "*" ) )+
and this is not because of several predicates in the same rule, because this one works ok:
comment_content: ( / [^\*\{] / | "*" !"}" | "{" !"*" ) comment_content | comment comment_content | ""
Maybe this is because of the same start "{" of both alternatives in the first (nonworking) example?
Full grammar and test sample see in description of bug #6.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions