language-ocaml-0.1.31: lib/Language/OCaml/Parser/Internal.hs
module Language.OCaml.Parser.Internal
( module Language.OCaml.Parser.Tokens
, Parser
, attributeP
, attributesP
, barConstructorDeclarationP
, constantP
, constrIdentP
, constrLongidentP
, constructorArgumentsP
, constructorDeclarationP
, constructorDeclarationsP
, coreTypeP
, coreType2P
, coreTypeCommaListP
, coreTypelistP
, exprP
, generalizedConstructorArgumentsP
, identP
, implementationP
, labeledSimpleExprP
, lblExprP
, lblExprListP
, letBindingP
, letBindingBodyP
, matchCaseP
, modLongidentP
, openStatementP
, patternP
, patternNoExnP
, postItemAttributesP
, recordExprP
, seqExprP
, simpleCoreTypeP
, simpleCoreType2P
, simpleCoreTypeOrTupleP
, simpleExprP
, simpleLabeledExprListP
, simplePatternP
, structureP
, structureItemP
, typeDeclarationP
, typeDeclarationsP
, typeKindP
, valIdentP
, valLongidentP
) where
import Language.OCaml.Definitions.Parsing.ASTTypes
import Language.OCaml.Definitions.Parsing.Parser.LetBindings
import Language.OCaml.Definitions.Parsing.ParseTree
import qualified Language.OCaml.Parser.Attribute
import qualified Language.OCaml.Parser.Attributes
import qualified Language.OCaml.Parser.BarConstructorDeclaration
import Language.OCaml.Parser.Common
import Language.OCaml.Parser.Constant
import Language.OCaml.Parser.ConstrIdent
import Language.OCaml.Parser.ConstrLongident
import qualified Language.OCaml.Parser.ConstructorArguments
import qualified Language.OCaml.Parser.ConstructorDeclaration
import qualified Language.OCaml.Parser.ConstructorDeclarations
import Language.OCaml.Parser.CoreType
import qualified Language.OCaml.Parser.CoreType2
import qualified Language.OCaml.Parser.CoreTypeCommaList
import qualified Language.OCaml.Parser.CoreTypeList
import qualified Language.OCaml.Parser.Expr
import qualified Language.OCaml.Parser.GeneralizedConstructorArguments
import Language.OCaml.Parser.Implementation
import qualified Language.OCaml.Parser.LabeledSimpleExpr
import qualified Language.OCaml.Parser.LblExpr
import qualified Language.OCaml.Parser.LblExprList
import qualified Language.OCaml.Parser.LetBinding
import qualified Language.OCaml.Parser.LetBindingBody
import qualified Language.OCaml.Parser.MatchCase
import Language.OCaml.Parser.ModLongident
import Language.OCaml.Parser.OpenStatement
import Language.OCaml.Parser.Pattern
import Language.OCaml.Parser.PatternNoExn
import qualified Language.OCaml.Parser.PostItemAttributes
import qualified Language.OCaml.Parser.RecordExpr
import qualified Language.OCaml.Parser.SeqExpr
import qualified Language.OCaml.Parser.SimpleCoreType
import qualified Language.OCaml.Parser.SimpleCoreType2
import qualified Language.OCaml.Parser.SimpleCoreTypeOrTuple
import qualified Language.OCaml.Parser.SimpleExpr
import qualified Language.OCaml.Parser.SimpleLabeledExprList
import qualified Language.OCaml.Parser.SimplePattern
import Language.OCaml.Parser.Structure
import qualified Language.OCaml.Parser.StructureItem
import Language.OCaml.Parser.Tokens
import qualified Language.OCaml.Parser.TypeDeclaration
import qualified Language.OCaml.Parser.TypeDeclarations
import qualified Language.OCaml.Parser.TypeKind
import Language.OCaml.Parser.ValIdent
import Language.OCaml.Parser.ValLongident
import Language.OCaml.Parser.Utils.Types
-- Tying the knots for our clients!
attributeP :: Parser (Loc String, Payload)
attributeP = Language.OCaml.Parser.Attribute.attributeP structureP
attributesP :: Parser [(Loc String, Payload)]
attributesP = Language.OCaml.Parser.Attributes.attributesP structureP
barConstructorDeclarationP :: Parser ConstructorDeclaration
barConstructorDeclarationP =
Language.OCaml.Parser.BarConstructorDeclaration.barConstructorDeclarationP structureP coreTypeP
constructorArgumentsP :: Parser ConstructorArguments
constructorArgumentsP =
Language.OCaml.Parser.ConstructorArguments.constructorArgumentsP coreTypeP
constructorDeclarationP :: Parser ConstructorDeclaration
constructorDeclarationP =
Language.OCaml.Parser.ConstructorDeclaration.constructorDeclarationP structureP coreTypeP
constructorDeclarationsP :: Parser [ConstructorDeclaration]
constructorDeclarationsP =
Language.OCaml.Parser.ConstructorDeclarations.constructorDeclarationsP structureP coreTypeP
coreType2P :: Parser CoreType
coreType2P = Language.OCaml.Parser.CoreType2.coreType2P coreTypeP
coreTypeCommaListP :: Parser [CoreType]
coreTypeCommaListP =
Language.OCaml.Parser.CoreTypeCommaList.coreTypeCommaListP coreTypeP
coreTypelistP :: Parser [CoreType]
coreTypelistP = Language.OCaml.Parser.CoreTypeList.coreTypelistP coreTypeP
exprP :: Parser Expression
exprP = Language.OCaml.Parser.Expr.exprP structureP seqExprP
generalizedConstructorArgumentsP :: Parser (ConstructorArguments, Maybe a)
generalizedConstructorArgumentsP =
Language.OCaml.Parser.GeneralizedConstructorArguments.generalizedConstructorArgumentsP
coreTypeP
lblExprP :: Parser (Loc Longident, Expression)
lblExprP = Language.OCaml.Parser.LblExpr.lblExprP exprP
lblExprListP :: Parser [(Loc Longident, Expression)]
lblExprListP = Language.OCaml.Parser.LblExprList.lblExprListP exprP
labeledSimpleExprP :: Parser (ArgLabel, Expression)
labeledSimpleExprP =
Language.OCaml.Parser.LabeledSimpleExpr.labeledSimpleExprP seqExprP exprP
letBindingP :: Parser LetBindings
letBindingP =
Language.OCaml.Parser.LetBinding.letBindingP structureP seqExprP
letBindingBodyP :: Parser (Pattern, Expression)
letBindingBodyP =
Language.OCaml.Parser.LetBindingBody.letBindingBodyP seqExprP
matchCaseP :: Parser Case
matchCaseP = Language.OCaml.Parser.MatchCase.matchCaseP seqExprP
postItemAttributesP :: Parser [(Loc String, Payload)]
postItemAttributesP = Language.OCaml.Parser.PostItemAttributes.postItemAttributesP structureP
recordExprP :: Parser (Maybe Expression, [(Loc Longident, Expression)])
recordExprP = Language.OCaml.Parser.RecordExpr.recordExprP exprP simpleExprP
seqExprP :: Parser Expression
seqExprP = Language.OCaml.Parser.SeqExpr.seqExprP structureP
simpleCoreTypeP :: Parser CoreType
simpleCoreTypeP = Language.OCaml.Parser.SimpleCoreType.simpleCoreTypeP coreTypeP
simpleCoreType2P :: Parser CoreType
simpleCoreType2P = Language.OCaml.Parser.SimpleCoreType2.simpleCoreType2P coreTypeP
simpleCoreTypeOrTupleP :: Parser CoreType
simpleCoreTypeOrTupleP =
Language.OCaml.Parser.SimpleCoreTypeOrTuple.simpleCoreTypeOrTupleP coreTypeP
simpleExprP :: Parser Expression
simpleExprP = Language.OCaml.Parser.SimpleExpr.simpleExprP seqExprP exprP
simpleLabeledExprListP :: Parser [(ArgLabel, Expression)]
simpleLabeledExprListP =
Language.OCaml.Parser.SimpleLabeledExprList.simpleLabeledExprListP seqExprP exprP
simplePatternP :: Parser Pattern
simplePatternP = Language.OCaml.Parser.SimplePattern.simplePatternP patternP
structureItemP :: Parser StructureItem
structureItemP = Language.OCaml.Parser.StructureItem.structureItemP structureP
typeDeclarationP :: Parser (RecFlag, TypeDeclaration)
typeDeclarationP = Language.OCaml.Parser.TypeDeclaration.typeDeclarationP structureP
typeDeclarationsP :: Parser (RecFlag, [TypeDeclaration])
typeDeclarationsP = Language.OCaml.Parser.TypeDeclarations.typeDeclarationsP structureP
typeKindP :: Parser (TypeKind, PrivateFlag, Maybe CoreType)
typeKindP = Language.OCaml.Parser.TypeKind.typeKindP structureP