curry-base-1.1.1: Functions for manipulating Curry programs
Copyright(c) 2017 Kai-Oliver Prott
LicenseBSD-3-clause
Maintainerfte@informatik.uni-kiel.de
Stabilityexperimental
Portabilityportable
Safe HaskellSafe
LanguageHaskell2010

Curry.Base.SpanInfo

Description

This module implements a data type for span information for entities from a source file and function to operate on them. A span info consists of the span of the entity and a list of sub-spans whith additional information about location of keywords, e.g.

Documentation

data SpanInfo Source #

Constructors

SpanInfo 

Fields

NoSpanInfo 

Instances

Instances details
Eq SpanInfo Source # 
Instance details

Defined in Curry.Base.SpanInfo

Methods

(==) :: SpanInfo -> SpanInfo -> Bool

(/=) :: SpanInfo -> SpanInfo -> Bool

Read SpanInfo Source # 
Instance details

Defined in Curry.Base.SpanInfo

Methods

readsPrec :: Int -> ReadS SpanInfo

readList :: ReadS [SpanInfo]

readPrec :: ReadPrec SpanInfo

readListPrec :: ReadPrec [SpanInfo]

Show SpanInfo Source # 
Instance details

Defined in Curry.Base.SpanInfo

Methods

showsPrec :: Int -> SpanInfo -> ShowS

show :: SpanInfo -> String

showList :: [SpanInfo] -> ShowS

HasPosition SpanInfo Source # 
Instance details

Defined in Curry.Base.SpanInfo

HasSpanInfo SpanInfo Source # 
Instance details

Defined in Curry.Base.SpanInfo

class HasPosition a => HasSpanInfo a where Source #

Minimal complete definition

getSpanInfo, setSpanInfo

Instances

Instances details
HasSpanInfo SpanInfo Source # 
Instance details

Defined in Curry.Base.SpanInfo

HasSpanInfo QualIdent Source # 
Instance details

Defined in Curry.Base.Ident

HasSpanInfo Ident Source # 
Instance details

Defined in Curry.Base.Ident

HasSpanInfo ModuleIdent Source # 
Instance details

Defined in Curry.Base.Ident

HasSpanInfo Constraint Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo QualTypeExpr Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo TypeExpr Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo FieldDecl Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo NewConstrDecl Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo ConstrDecl Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo Import Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo ImportSpec Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo ImportDecl Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo Export Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo ExportSpec Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo ModulePragma Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo (Goal a) Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo (Field a) Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo (Alt a) Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo (Statement a) Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo (Expression a) Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo (Pattern a) Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo (CondExpr a) Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo (Rhs a) Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo (Lhs a) Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo (Equation a) Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo (Decl a) Source # 
Instance details

Defined in Curry.Syntax.Type

HasSpanInfo (Module a) Source # 
Instance details

Defined in Curry.Syntax.Type

setSrcSpan :: HasSpanInfo a => Span -> a -> a Source #

spanInfoLike :: (HasSpanInfo a, HasSpanInfo b) => a -> b -> a Source #