language-puppet-1.4.4: Tools to parse and evaluate the Puppet DSL.

Safe HaskellNone
LanguageHaskell98

Puppet.Parser.Internal

Synopsis

Documentation

sc :: Parser () Source #

Space consumer

lexeme :: Parser a -> Parser a Source #

Lexeme consumes spaces after the input parser

symbol :: Text -> Parser () Source #

Consumes a text then consumes spaces

symbolic :: Char -> Parser () Source #

Consumes a character then consumes spaces

isIdentifierChar :: Char -> Bool Source #

Only Ascii, hyphens (-) are not allowed.

bareword :: Parser Text Source #

Like indentifier but hyphens (-) are allowed.

variableReference :: Parser Text Source #

Consumes a var $foo and then spaces

varExpression :: Parser Expression Source #

Variable expression

specialFunctions :: Parser Text Source #

Functions that have named that are not valid ...

indexLookupChain :: Parser (Expression -> Expression) Source #

Postfix of a chain of lookup indexes such as "[release][major]"

data OperatorChain a Source #

Instances
Foldable OperatorChain Source # 
Instance details

Defined in Puppet.Parser.Internal

Methods

fold :: Monoid m => OperatorChain m -> m #

foldMap :: Monoid m => (a -> m) -> OperatorChain a -> m #

foldr :: (a -> b -> b) -> b -> OperatorChain a -> b #

foldr' :: (a -> b -> b) -> b -> OperatorChain a -> b #

foldl :: (b -> a -> b) -> b -> OperatorChain a -> b #

foldl' :: (b -> a -> b) -> b -> OperatorChain a -> b #

foldr1 :: (a -> a -> a) -> OperatorChain a -> a #

foldl1 :: (a -> a -> a) -> OperatorChain a -> a #

toList :: OperatorChain a -> [a] #

null :: OperatorChain a -> Bool #

length :: OperatorChain a -> Int #

elem :: Eq a => a -> OperatorChain a -> Bool #

maximum :: Ord a => OperatorChain a -> a #

minimum :: Ord a => OperatorChain a -> a #

sum :: Num a => OperatorChain a -> a #

product :: Num a => OperatorChain a -> a #

resCollDecl :: Position -> Text -> Parser ResCollDecl Source #

Resource Collector

chainableResources :: Parser [Statement] Source #

Heterogeneous chain (interleaving resource declarations with resource references) needs to be supported:

class { 'docker::service': } -> Class[docker]