ginger2-2.2.0.0: Jinja templates for Haskell
Safe HaskellSafe-Inferred
LanguageHaskell2010

Language.Ginger.RuntimeError

Synopsis

Documentation

data RuntimeError Source #

Constructors

ArgumentError 

Fields

  • Text

    Callee

  • Text

    Argument (position or name)

  • Text

    Expected argument

  • Text

    Actual argument

TagError 

Fields

  • Text

    Identifier object context

  • Text

    Expected type(s)

  • Text

    Actual type

NonCallableObjectError Text

Object that was attempted to be used as a callable

NotInScopeError Text

Identifier

NotImplementedError Text

The thing that isn't implemented

NumericError 

Fields

  • Text

    Identifier object context

  • Text

    Error description

TemplateFileNotFoundError Text

Template name

TemplateParseError 

Fields

FatalError Text 
PositionedError !SourcePosition !RuntimeError 

Instances

Instances details
Exception RuntimeError Source # 
Instance details

Defined in Language.Ginger.RuntimeError

Show RuntimeError Source # 
Instance details

Defined in Language.Ginger.RuntimeError

Eq RuntimeError Source # 
Instance details

Defined in Language.Ginger.RuntimeError

Applicative m => ToNativeProcedure m (m (Either RuntimeError (Value m))) Source # 
Instance details

Defined in Language.Ginger.Value

Monad m => MonadError RuntimeError (GingerT m) Source # 
Instance details

Defined in Language.Ginger.Interpret.Type

Methods

throwError :: RuntimeError -> GingerT m a #

catchError :: GingerT m a -> (RuntimeError -> GingerT m a) -> GingerT m a #

Applicative m => FnToValue (Value m -> Value m -> Value m -> Value m -> Value m -> m (Either RuntimeError (Value m))) m Source # 
Instance details

Defined in Language.Ginger.Value

Methods

fnToValue :: ObjectID -> Maybe ProcedureDoc -> (Value m -> Value m -> Value m -> Value m -> Value m -> m (Either RuntimeError (Value m))) -> Value m Source #

Applicative m => FnToValue (Value m -> Value m -> Value m -> Value m -> m (Either RuntimeError (Value m))) m Source # 
Instance details

Defined in Language.Ginger.Value

Methods

fnToValue :: ObjectID -> Maybe ProcedureDoc -> (Value m -> Value m -> Value m -> Value m -> m (Either RuntimeError (Value m))) -> Value m Source #

Applicative m => FnToValue (Value m -> Value m -> Value m -> m (Either RuntimeError (Value m))) m Source # 
Instance details

Defined in Language.Ginger.Value

Methods

fnToValue :: ObjectID -> Maybe ProcedureDoc -> (Value m -> Value m -> Value m -> m (Either RuntimeError (Value m))) -> Value m Source #

Applicative m => FnToValue (Value m -> Value m -> m (Either RuntimeError (Value m))) m Source # 
Instance details

Defined in Language.Ginger.Value

Applicative m => FnToValue (Value m -> m (Either RuntimeError (Value m))) m Source # 
Instance details

Defined in Language.Ginger.Value

prettyRuntimeError :: RuntimeError -> String Source #

Pretty-print a RuntimeError. The output is meant to be useful as a user-facing error message.