@blockchaincommons/dcbor-parse - v1.0.0-beta.3
    Preparing search index...

    Type Alias DcborParseErrorDetails

    DcborParseErrorDetails:
        | { code: "EmptyInput" }
        | { code: "UnexpectedEndOfInput" }
        | { code: "ExtraData"; span: Span }
        | { code: "UnexpectedToken"; span: Span; token: Token }
        | { code: "UnrecognizedToken"; span: Span }
        | { code: "ExpectedComma"; span: Span }
        | { code: "ExpectedColon"; span: Span }
        | { code: "UnmatchedParentheses"; span: Span }
        | { code: "UnmatchedBraces"; span: Span }
        | { code: "ExpectedMapKey"; span: Span }
        | { code: "InvalidTagValue"; span: Span; value: string }
        | { code: "UnknownTagName"; span: Span; name: string }
        | { code: "InvalidHexString"; span: Span }
        | { code: "InvalidBase64String"; span: Span }
        | { code: "UnknownUrType"; span: Span; urType: string }
        | { code: "InvalidUr"; span: Span; cause: string }
        | { code: "InvalidKnownValue"; span: Span; value: string }
        | { code: "UnknownKnownValueName"; span: Span; name: string }
        | { code: "InvalidDateString"; span: Span; dateString: string }
        | { code: "DuplicateMapKey"; span: Span }
        | { code: "NestingTooDeep"; span: Span; maxDepth: number }

    The structured payload of a DcborParseError, discriminated by code: e.details.code === "UnknownTagName" narrows to { span, name }. Every code but EmptyInput and UnexpectedEndOfInput carries the span of the offending text.

    Type Declaration

    • { code: "EmptyInput" }
      • Readonlycode: "EmptyInput"

        The discriminant.

    • { code: "UnexpectedEndOfInput" }
      • Readonlycode: "UnexpectedEndOfInput"

        The discriminant.

    • { code: "ExtraData"; span: Span }
      • Readonlycode: "ExtraData"

        The discriminant.

      • Readonlyspan: Span

        The first token past the item.

    • { code: "UnexpectedToken"; span: Span; token: Token }
      • Readonlycode: "UnexpectedToken"

        The discriminant.

      • Readonlyspan: Span

        The token.

      • Readonlytoken: Token

        The token found, with its payload (a literal's decoded value or its own error).

    • { code: "UnrecognizedToken"; span: Span }
      • Readonlycode: "UnrecognizedToken"

        The discriminant.

      • Readonlyspan: Span

        The token before the unrecognised text (an empty span at the start of the source).

    • { code: "ExpectedComma"; span: Span }
      • Readonlycode: "ExpectedComma"

        The discriminant.

      • Readonlyspan: Span

        The token found instead.

    • { code: "ExpectedColon"; span: Span }
      • Readonlycode: "ExpectedColon"

        The discriminant.

      • Readonlyspan: Span

        The token found instead, or the key when the source ended.

    • { code: "UnmatchedParentheses"; span: Span }
      • Readonlycode: "UnmatchedParentheses"

        The discriminant.

      • Readonlyspan: Span

        The token found instead of ), or the last token when the source ended.

    • { code: "UnmatchedBraces"; span: Span }
      • Readonlycode: "UnmatchedBraces"

        The discriminant.

      • Readonlyspan: Span

        The last token before the source ended.

    • { code: "ExpectedMapKey"; span: Span }
      • Readonlycode: "ExpectedMapKey"

        The discriminant.

      • Readonlyspan: Span

        The } found where a value was expected.

    • { code: "InvalidTagValue"; span: Span; value: string }
      • Readonlycode: "InvalidTagValue"

        The discriminant.

      • Readonlyspan: Span

        The digits.

      • Readonlyvalue: string

        The digits as written.

    • { code: "UnknownTagName"; span: Span; name: string }
      • Readonlycode: "UnknownTagName"

        The discriminant.

      • Readonlyspan: Span

        The name.

      • Readonlyname: string

        The name that did not resolve.

    • { code: "InvalidHexString"; span: Span }
      • Readonlycode: "InvalidHexString"

        The discriminant.

      • Readonlyspan: Span

        The literal.

    • { code: "InvalidBase64String"; span: Span }
      • Readonlycode: "InvalidBase64String"

        The discriminant.

      • Readonlyspan: Span

        The literal.

    • { code: "UnknownUrType"; span: Span; urType: string }
      • Readonlycode: "UnknownUrType"

        The discriminant.

      • Readonlyspan: Span

        The type inside the UR.

      • ReadonlyurType: string

        The UR type that did not resolve.

    • { code: "InvalidUr"; span: Span; cause: string }
      • Readonlycode: "InvalidUr"

        The discriminant.

      • Readonlyspan: Span

        The UR.

      • Readonlycause: string

        The UR decoder's reason.

    • { code: "InvalidKnownValue"; span: Span; value: string }
      • Readonlycode: "InvalidKnownValue"

        The discriminant.

      • Readonlyspan: Span

        The digits inside the quotes.

      • Readonlyvalue: string

        The digits as written.

    • { code: "UnknownKnownValueName"; span: Span; name: string }
      • Readonlycode: "UnknownKnownValueName"

        The discriminant.

      • Readonlyspan: Span

        The name inside the quotes.

      • Readonlyname: string

        The name that did not resolve.

    • { code: "InvalidDateString"; span: Span; dateString: string }
      • Readonlycode: "InvalidDateString"

        The discriminant.

      • Readonlyspan: Span

        The literal.

      • ReadonlydateString: string

        The literal as written.

    • { code: "DuplicateMapKey"; span: Span }
      • Readonlycode: "DuplicateMapKey"

        The discriminant.

      • Readonlyspan: Span

        The second occurrence of the key.

    • { code: "NestingTooDeep"; span: Span; maxDepth: number }
      • Readonlycode: "NestingTooDeep"

        The discriminant.

      • Readonlyspan: Span

        The token that opened the level too many.

      • ReadonlymaxDepth: number

        The limit in force.