@samatawy/rules
    Preparing search index...

    Interface RulesFileReaderOptions

    Options for configuring the behavior of the RulesFileReader when parsing rules from a file.

    interface RulesFileReaderOptions {
        read_by: "block" | "line";
        workspace?: Workspace;
        accept: "all" | "partial";
    }

    Hierarchy (View Summary)

    Index

    Properties

    read_by: "block" | "line"

    Determines whether to read the file content line by line or block by block (separated by empty lines). This allows for flexible formatting of the file, where each entry can either be defined on a single line or as a block of text.

    • 'line': Read the file content line by line, where each line is considered a separate entry to parse. Empty lines will be skipped.
    • 'block': Read the file content block by block, where blocks are separated by one or more empty lines. Each block (which can consist of multiple lines) is considered a separate entry to parse. Empty blocks will be skipped.
    workspace?: Workspace

    Optional reference to the Workspace instance, which can be used by the RuleParser to access existing rules, types, functions, and constants when parsing rules from the file. This allows for more complex rule definitions that can reference other components within the Workspace.

    accept: "all" | "partial"

    Determines whether to accept all rules (including invalid ones) or only fully valid rules.

    • 'all': Accept all rules, but include errors for any invalid rules. The resulting rules array will include only the successfully parsed rules, and the errors array will contain messages for any rules that failed to parse.
    • 'partial': Only accept rules if all of them are valid. If any rule fails to parse, the entire parsing process will be considered a failure, and the resulting rules array will be empty while the errors array will contain messages for all failed rules.