dtzrttp/moonbit-rtl/src/parser does not have a README file

    ParseError

    pub(all) struct ParseError {
    message : String
    span :
    Span

    } derive(Eq,
    Debug
    )

    ParseMetrics

    pub(all) struct ParseMetrics {
    modules : Int
    syntax_errors : Int
    ports : Int
    signals : Int
    items : Int
    instances : Int
    expressions : Int
    statements : Int
    } derive(Eq,
    Debug
    )

    ParseResult

    ParseResult::contains_recovered_module

    fn ParseResult::contains_recovered_module(self : ParseResult, name : String) -> Bool

    ParseResult::error_count

    fn ParseResult::error_count(self : ParseResult) -> Int

    ParseResult::error_kinds

    fn ParseResult::error_kinds(self : ParseResult) -> Array[(RecoveryKind, Int)]

    ParseResult::error_messages

    fn ParseResult::error_messages(self : ParseResult) -> Array[String]

    Return parser error messages in source order.

    ParseResult::error_spans

    ParseResult::error_summary

    fn ParseResult::error_summary(self : ParseResult) -> String

    ParseResult::first_error_span

    Return the first error span, if recovery produced an error.

    ParseResult::first_module_span

    ParseResult::has_modules

    fn ParseResult::has_modules(self : ParseResult) -> Bool

    Return whether at least one module was recovered.

    ParseResult::has_recoverable_errors

    fn ParseResult::has_recoverable_errors(self : ParseResult) -> Bool

    ParseResult::is_valid

    fn ParseResult::is_valid(self : ParseResult) -> Bool

    Return whether parsing completed without a syntax error.

    ParseResult::last_module_span

    ParseResult::metrics

    fn ParseResult::metrics(self : ParseResult) -> ParseMetrics

    ParseResult::module_count

    fn ParseResult::module_count(self : ParseResult) -> Int

    Return the number of modules recovered from the input.

    ParseResult::module_has_name

    fn ParseResult::module_has_name(self : ParseResult, name : String) -> Bool

    ParseResult::module_item_counts

    fn ParseResult::module_item_counts(self : ParseResult) -> Array[(String, Int)]

    ParseResult::module_names

    fn ParseResult::module_names(self : ParseResult) -> Array[String]

    Return recovered module names even when later syntax is invalid.

    ParseResult::recovered_item_count

    fn ParseResult::recovered_item_count(self : ParseResult) -> Int

    ParseResult::recovered_module_count

    fn ParseResult::recovered_module_count(self : ParseResult) -> Int

    ParseResult::recovery_quality

    fn ParseResult::recovery_quality(self : ParseResult) -> String

    ParseResult::recovery_summary

    fn ParseResult::recovery_summary(self : ParseResult) -> String

    ParseResult::summary

    fn ParseResult::summary(self : ParseResult) -> String

    ParseResult::syntax_error_at

    fn ParseResult::syntax_error_at(self : ParseResult, offset : Int) -> Bool

    RecoveryKind

    pub(all) enum RecoveryKind {
    MissingDelimiter
    UnexpectedToken
    MissingDeclaration
    MissingModuleEnd
    InvalidExpression
    } derive(Eq,
    Debug
    )

    classify_error

    fn classify_error(message : String) -> RecoveryKind