flatten pkg
Signature: pkg:CftPackage -> AstElement list
|
Flattens the object graph of a package into a list of AstElement values
|
getConnectionManagerByName name
Signature: name:String -> AstElement list -> CfConnectionManager
|
Get a connection manager by name from a flattened package
|
getExecutableByPath path
Signature: path:string list -> AstElement list -> CftExecutable
|
Get an executable by path from a flattened package
|
getPipelineComponentByPath path
Signature: path:string list -> AstElement list -> DfComponent
|
Get a pipeline component by path from a flattened package
|
getVariableByPath path
Signature: path:string list -> AstElement list -> CfVariable
|
Get a variable by path from a flattened package
|
map mapper pkg
Signature: mapper:(AstElement -> T option) -> pkg:CftPackage -> CftPackage
|
Performs a deep transformation on a package.
The mapper can remove, replace or add elements to the package. Removing elements
is achieved by returning a value of None. Values should always be returned of the same
element type as the type matched.The mapping is performed hierarchically, with parents being transformed before
children. This allows new children to be injected and subsequently transfomed.It is possible to chain transformations as often as desired, however the translation
is most efficient when transformations are combined into a single mapper function.
|