Safe Haskell | None |
---|
- vmapM :: (Monad m, Foldable t) => (a -> m b) -> t a -> m [b]
- getCatalog :: (TopLevelType -> Text -> IO (Either Doc Statement)) -> (Either Text Text -> Text -> Container ScopeInformation -> IO (Either Doc Text)) -> PuppetDBAPI -> Text -> Facts -> Container PuppetTypeMethods -> Container ([PValue] -> InterpreterMonad PValue) -> HieraQueryFunc -> IO (Pair (Either Doc (FinalCatalog, EdgeMap, FinalCatalog)) [Pair Priority Doc])
- isParent :: Text -> CurContainerDesc -> InterpreterMonad Bool
- finalize :: [Resource] -> InterpreterMonad [Resource]
- popScope :: InterpreterMonad ()
- pushScope :: CurContainerDesc -> InterpreterMonad ()
- evalTopLevel :: Statement -> InterpreterMonad ([Resource], Statement)
- getstt :: TopLevelType -> Text -> InterpreterMonad ([Resource], Statement)
- computeCatalog :: Text -> InterpreterMonad (FinalCatalog, EdgeMap, FinalCatalog)
- dependencyErrors :: [Tree Vertex] -> (Vertex -> (RIdentifier, RIdentifier, [RIdentifier])) -> InterpreterMonad ()
- makeEdgeMap :: FinalCatalog -> InterpreterMonad EdgeMap
- realize :: [Resource] -> InterpreterMonad (Pair FinalCatalog FinalCatalog)
- evaluateNode :: Statement -> InterpreterMonad [Resource]
- evaluateStatementsVector :: Foldable f => f Statement -> InterpreterMonad [Resource]
- fromArgumentList :: [Pair Text a] -> InterpreterMonad (Container a)
- evaluateStatement :: Statement -> InterpreterMonad [Resource]
- loadVariable :: Text -> PValue -> InterpreterMonad ()
- loadParameters :: Foldable f => Container PValue -> f (Pair Text (Maybe Expression)) -> PPosition -> Maybe Text -> InterpreterMonad ()
- enterScope :: Maybe Text -> CurContainerDesc -> InterpreterMonad Text
- dropInitialColons :: Text -> Text
- expandDefine :: Resource -> InterpreterMonad [Resource]
- loadClass :: Text -> Container PValue -> ClassIncludeType -> InterpreterMonad [Resource]
- addRelationship :: LinkType -> PValue -> Resource -> InterpreterMonad Resource
- addTagResource :: Resource -> Text -> Resource
- addAttribute :: OverrideType -> Resource -> (Text, PValue) -> InterpreterMonad Resource
- registerResource :: Text -> Text -> Container PValue -> Virtuality -> PPosition -> InterpreterMonad [Resource]
- logWithModifier :: Priority -> (Doc -> Doc) -> [PValue] -> InterpreterMonad [Resource]
- mainFunctionCall :: Text -> [PValue] -> InterpreterMonad [Resource]
- evaluateHFC :: HFunctionCall -> InterpreterMonad [Resource]
Documentation
:: (TopLevelType -> Text -> IO (Either Doc Statement)) | get statements function |
-> (Either Text Text -> Text -> Container ScopeInformation -> IO (Either Doc Text)) | compute template function |
-> PuppetDBAPI | |
-> Text | Node name |
-> Facts | Facts ... |
-> Container PuppetTypeMethods | List of native types |
-> Container ([PValue] -> InterpreterMonad PValue) | |
-> HieraQueryFunc | Hiera query function |
-> IO (Pair (Either Doc (FinalCatalog, EdgeMap, FinalCatalog)) [Pair Priority Doc]) |
isParent :: Text -> CurContainerDesc -> InterpreterMonad Bool
finalize :: [Resource] -> InterpreterMonad [Resource]
popScope :: InterpreterMonad ()
pushScope :: CurContainerDesc -> InterpreterMonad ()
evalTopLevel :: Statement -> InterpreterMonad ([Resource], Statement)
getstt :: TopLevelType -> Text -> InterpreterMonad ([Resource], Statement)
dependencyErrors :: [Tree Vertex] -> (Vertex -> (RIdentifier, RIdentifier, [RIdentifier])) -> InterpreterMonad ()
realize :: [Resource] -> InterpreterMonad (Pair FinalCatalog FinalCatalog)
evaluateStatementsVector :: Foldable f => f Statement -> InterpreterMonad [Resource]
fromArgumentList :: [Pair Text a] -> InterpreterMonad (Container a)
Converts a list of pairs into a container, checking there is no duplicate
loadVariable :: Text -> PValue -> InterpreterMonad ()
loadParameters :: Foldable f => Container PValue -> f (Pair Text (Maybe Expression)) -> PPosition -> Maybe Text -> InterpreterMonad ()
This function loads class and define parameters into scope. It checks that all mandatory parameters are set, that no extra parameter is declared.
It is able to fill unset parameters with values from Hiera (for classes only) or default values.
enterScope :: Maybe Text -> CurContainerDesc -> InterpreterMonad Text
Enters a new scope, checks it is not already defined, and inherits the defaults from the current scope
Inheriting the defaults is necessary for non native types, because they will be expanded in finalize, so if this was not done, we would be expanding the defines without the defaults applied
dropInitialColons :: Text -> Text
expandDefine :: Resource -> InterpreterMonad [Resource]
loadClass :: Text -> Container PValue -> ClassIncludeType -> InterpreterMonad [Resource]
addRelationship :: LinkType -> PValue -> Resource -> InterpreterMonad Resource
addTagResource :: Resource -> Text -> Resource
addAttribute :: OverrideType -> Resource -> (Text, PValue) -> InterpreterMonad Resource
registerResource :: Text -> Text -> Container PValue -> Virtuality -> PPosition -> InterpreterMonad [Resource]
logWithModifier :: Priority -> (Doc -> Doc) -> [PValue] -> InterpreterMonad [Resource]
mainFunctionCall :: Text -> [PValue] -> InterpreterMonad [Resource]