charge/error

Types

pub type ChargeError {
  Context(String, ChargeError)
  Collated(List(ChargeError))
  FileNotFound(String)
  ErrorReadingTextFile(String)
  ErrorReadingFrontmatter(String)
  ErrorReadingImageMeta(String)
  DirNotFound(String)
  ParentDirNotFound(String)
  ErrorCopyingDir(String)
  ErrorCreatingDir(String)
  ErrorDeletingDir(String)
  PathUnresolvable(String)
  ErrorWritingTextFile(String)
  DateParseError(String)
  InvalidSitePath(String)
  InvalidSiteDir(String)
  ErrorRenderingMarkdown(String)
  ImageNotFound(String)
  InvalidImageSrc(String)
  ImageOptimizeError(String)
  SyntaxHighlightingError(String)
  ComponentError(String)
}

Constructors

  • Context(String, ChargeError)
  • Collated(List(ChargeError))
  • FileNotFound(String)
  • ErrorReadingTextFile(String)
  • ErrorReadingFrontmatter(String)
  • ErrorReadingImageMeta(String)
  • DirNotFound(String)
  • ParentDirNotFound(String)
  • ErrorCopyingDir(String)
  • ErrorCreatingDir(String)
  • ErrorDeletingDir(String)
  • PathUnresolvable(String)
  • ErrorWritingTextFile(String)
  • DateParseError(String)
  • InvalidSitePath(String)
  • InvalidSiteDir(String)
  • ErrorRenderingMarkdown(String)
  • ImageNotFound(String)
  • InvalidImageSrc(String)
  • ImageOptimizeError(String)
  • SyntaxHighlightingError(String)
  • ComponentError(String)
pub type ChargeResult(r) =
  Result(r, ChargeError)

Values

pub fn collate_errors(
  results: List(Result(r, ChargeError)),
) -> Result(List(r), ChargeError)

A drop-in replacement for result.all for merging errors into a single error object this is pretty slow since it uses result.all, result.partition, and list.reverse under the hood. Potentially an optimization target. If we don’t care about ordering we can just use result.partition but order is important - especially for the happy case

pub fn error_context(
  err: ChargeError,
  msg: String,
) -> ChargeError

Add some context to an error

pub fn error_to_string(err: ChargeError) -> String
Search Document