| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
Hix.Preproc
Documentation
type Regex = IndexedTraversal' Int ByteString Match Source #
data CabalConfig Source #
Constructors
| CabalConfig | |
Fields
| |
Instances
newtype DummyExportName Source #
Constructors
| DummyExportName | |
Fields | |
Instances
| IsString DummyExportName Source # | |||||
Defined in Hix.Preproc Methods fromString :: String -> DummyExportName # | |||||
| Generic DummyExportName Source # | |||||
Defined in Hix.Preproc Associated Types
Methods from :: DummyExportName -> Rep DummyExportName x # to :: Rep DummyExportName x -> DummyExportName # | |||||
| Show DummyExportName Source # | |||||
Defined in Hix.Preproc Methods showsPrec :: Int -> DummyExportName -> ShowS # show :: DummyExportName -> String # showList :: [DummyExportName] -> ShowS # | |||||
| Eq DummyExportName Source # | |||||
Defined in Hix.Preproc Methods (==) :: DummyExportName -> DummyExportName -> Bool # (/=) :: DummyExportName -> DummyExportName -> Bool # | |||||
| Ord DummyExportName Source # | |||||
Defined in Hix.Preproc Methods compare :: DummyExportName -> DummyExportName -> Ordering # (<) :: DummyExportName -> DummyExportName -> Bool # (<=) :: DummyExportName -> DummyExportName -> Bool # (>) :: DummyExportName -> DummyExportName -> Bool # (>=) :: DummyExportName -> DummyExportName -> Bool # max :: DummyExportName -> DummyExportName -> DummyExportName # min :: DummyExportName -> DummyExportName -> DummyExportName # | |||||
| type Rep DummyExportName Source # | |||||
Defined in Hix.Preproc type Rep DummyExportName = D1 ('MetaData "DummyExportName" "Hix.Preproc" "hix-0.7.2-7rwpoWJhaauIDtZl7KwtG7" 'True) (C1 ('MetaCons "DummyExportName" 'PrefixI 'True) (S1 ('MetaSel ('Just "unDummyExportName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ByteString))) | |||||
takeLine :: ByteString -> Maybe (ByteString, ByteString) Source #
line :: ByteString -> Builder Source #
joinLinesReverse :: [ByteString] -> ByteString Source #
joinLinesReverseBuilder :: [ByteString] -> Builder Source #
languagePragma :: [Builder] -> Builder Source #
optionsPragma :: Builder -> Builder Source #
commentRegex :: Regex Source #
moduleRegex :: Regex Source #
importRegex :: Regex Source #
isComment :: ByteString -> Bool Source #
isModule :: ByteString -> Maybe ByteString Source #
isModuleEnd :: ByteString -> Bool Source #
isImportsEnd :: ByteString -> Bool Source #
isImport :: ByteString -> Bool Source #
Constructors
| PreModule | |
| ModuleStart | |
| ModuleExports | |
| Imports |
Instances
| Generic Phase Source # | |||||
Defined in Hix.Preproc Associated Types
| |||||
| Show Phase Source # | |||||
| Eq Phase Source # | |||||
| type Rep Phase Source # | |||||
Defined in Hix.Preproc type Rep Phase = D1 ('MetaData "Phase" "Hix.Preproc" "hix-0.7.2-7rwpoWJhaauIDtZl7KwtG7" 'False) ((C1 ('MetaCons "PreModule" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ModuleStart" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ModuleExports" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Imports" 'PrefixI 'False) (U1 :: Type -> Type))) | |||||
data PreludeAction Source #
Constructors
| PreludeDefault | |
| PreludeNoImplicit | |
| PreludeReplaced |
Instances
| Generic PreludeAction Source # | |||||
Defined in Hix.Preproc Associated Types
| |||||
| Show PreludeAction Source # | |||||
Defined in Hix.Preproc Methods showsPrec :: Int -> PreludeAction -> ShowS # show :: PreludeAction -> String # showList :: [PreludeAction] -> ShowS # | |||||
| Eq PreludeAction Source # | |||||
Defined in Hix.Preproc Methods (==) :: PreludeAction -> PreludeAction -> Bool # (/=) :: PreludeAction -> PreludeAction -> Bool # | |||||
| type Rep PreludeAction Source # | |||||
Defined in Hix.Preproc type Rep PreludeAction = D1 ('MetaData "PreludeAction" "Hix.Preproc" "hix-0.7.2-7rwpoWJhaauIDtZl7KwtG7" 'False) (C1 ('MetaCons "PreludeDefault" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "PreludeNoImplicit" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PreludeReplaced" 'PrefixI 'False) (U1 :: Type -> Type))) | |||||
data CustomPrelude Source #
Constructors
| CustomPrelude Prelude PreludeAction | |
| NoCustomPrelude |
Instances
| Generic CustomPrelude Source # | |||||
Defined in Hix.Preproc Associated Types
| |||||
| Show CustomPrelude Source # | |||||
Defined in Hix.Preproc Methods showsPrec :: Int -> CustomPrelude -> ShowS # show :: CustomPrelude -> String # showList :: [CustomPrelude] -> ShowS # | |||||
| type Rep CustomPrelude Source # | |||||
Defined in Hix.Preproc type Rep CustomPrelude = D1 ('MetaData "CustomPrelude" "Hix.Preproc" "hix-0.7.2-7rwpoWJhaauIDtZl7KwtG7" 'False) (C1 ('MetaCons "CustomPrelude" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Prelude) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 PreludeAction)) :+: C1 ('MetaCons "NoCustomPrelude" 'PrefixI 'False) (U1 :: Type -> Type)) | |||||
preludeRegex :: Regex Source #
replacePrelude :: ByteString -> Prelude -> Maybe ByteString Source #
parenRegex :: Regex Source #
insertExport :: ByteString -> ByteString Source #
moduleExports :: ByteString -> [ByteString] Source #
Constructors
| Header | |
Fields
| |
Instances
| Generic Header Source # | |||||
Defined in Hix.Preproc Associated Types
| |||||
| Show Header Source # | |||||
| type Rep Header Source # | |||||
Defined in Hix.Preproc type Rep Header = D1 ('MetaData "Header" "Hix.Preproc" "hix-0.7.2-7rwpoWJhaauIDtZl7KwtG7" 'False) (C1 ('MetaCons "Header" 'PrefixI 'True) ((S1 ('MetaSel ('Just "moduleLines") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [ByteString]) :*: (S1 ('MetaSel ('Just "importLines") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [ByteString]) :*: S1 ('MetaSel ('Just "rest") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Builder))) :*: ((S1 ('MetaSel ('Just "moduleEndLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "importsEndLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int)) :*: (S1 ('MetaSel ('Just "prelude") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 CustomPrelude) :*: S1 ('MetaSel ('Just "exportsSelf") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Bool))))) | |||||
Constructors
| ScanState | |
Fields
| |
Instances
| Generic ScanState Source # | |||||
Defined in Hix.Preproc Associated Types
| |||||
| Show ScanState Source # | |||||
| type Rep ScanState Source # | |||||
Defined in Hix.Preproc type Rep ScanState = D1 ('MetaData "ScanState" "Hix.Preproc" "hix-0.7.2-7rwpoWJhaauIDtZl7KwtG7" 'False) (C1 ('MetaCons "ScanState" 'PrefixI 'True) (((S1 ('MetaSel ('Just "phase") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Phase) :*: S1 ('MetaSel ('Just "moduleLines") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [ByteString])) :*: (S1 ('MetaSel ('Just "importLines") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [ByteString]) :*: S1 ('MetaSel ('Just "moduleLength") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int))) :*: ((S1 ('MetaSel ('Just "importsLength") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "prelude") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 CustomPrelude)) :*: (S1 ('MetaSel ('Just "moduleName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe ByteString)) :*: S1 ('MetaSel ('Just "exportsSelf") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Bool))))) | |||||
scanHeader :: Maybe Prelude -> ByteString -> Header Source #
customPreludeImport :: Prelude -> Builder Source #
pattern NeedPreludeExtensions :: PreludeAction Source #
needDummy :: CustomPrelude -> Bool Source #
pattern NeedDummy :: CustomPrelude Source #
explicitPreludeImport :: Builder -> CustomPrelude -> Builder Source #
dummyDecl :: CustomPrelude -> Builder -> DummyExportName -> Builder Source #
replaceDummy :: CustomPrelude -> Bool -> DummyExportName -> ByteString -> ByteString Source #
assemble :: Path Abs File -> Header -> Maybe Builder -> Maybe Builder -> DummyExportName -> Builder Source #
preprocessModule :: Path Abs File -> CabalConfig -> DummyExportName -> ByteString -> Builder Source #
preprocessWith :: PreprocOptions -> CabalConfig -> M () Source #
fromConfig :: Maybe (Path Abs Dir) -> Path Abs File -> Either PreprocConfig JsonConfig -> M CabalConfig Source #
fromCabal :: BuildInfo -> CabalConfig Source #
fromCabalFile :: Path Abs File -> M CabalConfig Source #
preprocess :: PreprocOptions -> M () Source #