| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Language.Haskell.Syntax.Binds.InlinePragma
Synopsis
- data InlinePragma pass
- = InlinePragma {
- inl_ext :: !(XInlinePragma pass)
- inl_inline :: !InlineSpec
- inl_act :: !(Activation pass)
- inl_rule :: !RuleMatchInfo
- | XInlinePragma !(XXInlinePragma pass)
- = InlinePragma {
- isAnyInlinePragma :: InlinePragma p -> Bool
- isInlinablePragma :: InlinePragma p -> Bool
- isInlinePragma :: InlinePragma p -> Bool
- isNoInlinePragma :: InlinePragma p -> Bool
- isOpaquePragma :: InlinePragma p -> Bool
- data InlineSpec
- noUserInlineSpec :: InlineSpec -> Bool
- data RuleMatchInfo
- isConLike :: RuleMatchInfo -> Bool
- isFunLike :: RuleMatchInfo -> Bool
- type Activation pass = ActivationX (XXActivation pass)
- data ActivationX e
- type PhaseNum = Int
Inline Pragma Encoding
InlinePragma
Data-type
data InlinePragma pass Source #
Constructors
| InlinePragma | |
Fields
| |
| XInlinePragma !(XXInlinePragma pass) | |
Instances
Queries
isAnyInlinePragma :: InlinePragma p -> Bool Source #
isInlinablePragma :: InlinePragma p -> Bool Source #
isInlinePragma :: InlinePragma p -> Bool Source #
isNoInlinePragma :: InlinePragma p -> Bool Source #
isOpaquePragma :: InlinePragma p -> Bool Source #
InlineSpec
Data-type
data InlineSpec Source #
Inline Specification
Constructors
| Inline | |
| Inlinable | |
| NoInline | |
| Opaque | |
| NoUserInlinePrag |
Instances
Queries
noUserInlineSpec :: InlineSpec -> Bool Source #
RuleMatchInfo
Data-type
data RuleMatchInfo Source #
Rule Match Information
Instances
Queries
isConLike :: RuleMatchInfo -> Bool Source #
isFunLike :: RuleMatchInfo -> Bool Source #
Phase Activation
Activation
Data-type
type Activation pass = ActivationX (XXActivation pass) Source #
data ActivationX e Source #
An activation is a range of phases throughout which something is active (like an INLINE pragma, SPECIALISE pragma, or RULE).
Constructors
| AlwaysActive | |
| ActiveBefore PhaseNum | Active only *strictly before* this phase |
| ActiveAfter PhaseNum | Active in this phase and later phases |
| NeverActive | Active in the final phase only |
| XActivation !e |