Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- data Ann = Ann {}
- data SrcSpan = SrcSpan {
- srcSpanFile :: FilePath
- srcSpanSLine :: Int
- srcSpanSCol :: Int
- srcSpanELine :: Int
- srcSpanECol :: Int
- newtype SrcSpans = SrcSpans {
- unSrcSpans :: Set SrcSpan
- newtype InlineHints name a = InlineHints {
- shouldInline :: a -> name -> Bool
- data Inline
- annAlwaysInline :: Ann
- annMayInline :: Ann
- data SourcePos = SourcePos {
- sourceName :: FilePath
- sourceLine :: !Pos
- sourceColumn :: !Pos
- data Pos
- addSrcSpan :: SrcSpan -> Ann -> Ann
- lineInSrcSpan :: Pos -> SrcSpan -> Bool
Documentation
An annotation type used during the compilation.
Ann | |
|
Instances
Generic Ann Source # | |
Show Ann Source # | |
Eq Ann Source # | |
Ord Ann Source # | |
Hashable Ann Source # | |
Defined in PlutusCore.Annotation | |
Pretty Ann Source # | |
Defined in PlutusCore.Annotation | |
type Rep Ann Source # | |
Defined in PlutusCore.Annotation type Rep Ann = D1 ('MetaData "Ann" "PlutusCore.Annotation" "plutus-core-1.36.0.0-7ehJj5tIPqoJIiiivXkX9N" 'False) (C1 ('MetaCons "Ann" 'PrefixI 'True) (S1 ('MetaSel ('Just "annInline") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Inline) :*: S1 ('MetaSel ('Just "annSrcSpans") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SrcSpans))) |
The span between two source locations.
This corresponds roughly to the SrcSpan
used by GHC,
but we define our own version so we don't have to depend on ghc
to use it.
The line and column numbers are 1-based, and the unit is Unicode code point (or Char
).
SrcSpan | |
|
Instances
Instances
newtype InlineHints name a Source #
InlineHints | |
|
Instances
Monoid (InlineHints name a) Source # | |
Defined in PlutusCore.Annotation mempty :: InlineHints name a Source # mappend :: InlineHints name a -> InlineHints name a -> InlineHints name a Source # mconcat :: [InlineHints name a] -> InlineHints name a Source # | |
Semigroup (InlineHints name a) Source # | |
Defined in PlutusCore.Annotation (<>) :: InlineHints name a -> InlineHints name a -> InlineHints name a Source # sconcat :: NonEmpty (InlineHints name a) -> InlineHints name a Source # stimes :: Integral b => b -> InlineHints name a -> InlineHints name a Source # | |
Show (InlineHints name a) Source # | |
Defined in PlutusCore.Annotation |
AlwaysInline | When calling This is currently used to ensure builtin functions such as |
MayInline |
annAlwaysInline :: Ann Source #
Create an Ann
with AlwaysInline
.
SourcePos | |
|
Instances
Data SourcePos | |
Defined in Text.Megaparsec.Pos gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SourcePos -> c SourcePos Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SourcePos Source # toConstr :: SourcePos -> Constr Source # dataTypeOf :: SourcePos -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SourcePos) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SourcePos) Source # gmapT :: (forall b. Data b => b -> b) -> SourcePos -> SourcePos Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SourcePos -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SourcePos -> r Source # gmapQ :: (forall d. Data d => d -> u) -> SourcePos -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> SourcePos -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> SourcePos -> m SourcePos Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SourcePos -> m SourcePos Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SourcePos -> m SourcePos Source # | |
Generic SourcePos | |
Read SourcePos | |
Show SourcePos | |
NFData SourcePos | |
Defined in Text.Megaparsec.Pos | |
Eq SourcePos | |
Ord SourcePos | |
Defined in Text.Megaparsec.Pos | |
Pretty SourcePos Source # | |
Defined in PlutusCore.Error | |
type Rep SourcePos | |
Defined in Text.Megaparsec.Pos type Rep SourcePos = D1 ('MetaData "SourcePos" "Text.Megaparsec.Pos" "megaparsec-9.6.1-2y4TSvMYdIdIGL4Xdwvkcx" 'False) (C1 ('MetaCons "SourcePos" 'PrefixI 'True) (S1 ('MetaSel ('Just "sourceName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FilePath) :*: (S1 ('MetaSel ('Just "sourceLine") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Pos) :*: S1 ('MetaSel ('Just "sourceColumn") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Pos)))) |
Instances
Data Pos | |
Defined in Text.Megaparsec.Pos gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Pos -> c Pos Source # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Pos Source # toConstr :: Pos -> Constr Source # dataTypeOf :: Pos -> DataType Source # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Pos) Source # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Pos) Source # gmapT :: (forall b. Data b => b -> b) -> Pos -> Pos Source # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Pos -> r Source # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Pos -> r Source # gmapQ :: (forall d. Data d => d -> u) -> Pos -> [u] Source # gmapQi :: Int -> (forall d. Data d => d -> u) -> Pos -> u Source # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Pos -> m Pos Source # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Pos -> m Pos Source # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Pos -> m Pos Source # | |
Semigroup Pos | |
Generic Pos | |
Read Pos | |
Show Pos | |
NFData Pos | |
Defined in Text.Megaparsec.Pos | |
Eq Pos | |
Ord Pos | |
type Rep Pos | |
Defined in Text.Megaparsec.Pos |