uuagc

PrintOcamlCode

# Documentation

sem_CaseAlts :: CaseAlts -> T_CaseAlts

newtype T_CaseAlts

Constructors

T_CaseAlts (Options -> PP_Docs) |

data Inh_CaseAlts

Constructors

Inh_CaseAlts |
Fields options_Inh_CaseAlts :: !Options

data Syn_CaseAlts

Constructors

Syn_CaseAlts |
Fields pps_Syn_CaseAlts :: !PP_Docs

wrap_CaseAlts :: T_CaseAlts -> Inh_CaseAlts -> Syn_CaseAlts

sem_CaseAlts_Cons :: T_CaseAlt -> T_CaseAlts -> T_CaseAlts

sem_CaseAlts_Nil :: T_CaseAlts

sem_Chunk :: Chunk -> T_Chunk

newtype T_Chunk

Constructors

T_Chunk (Bool -> Options -> Map BlockInfo PP_Doc -> PP_Docs) |

data Inh_Chunk

Constructors

Inh_Chunk |
Fields isToplevel_Inh_Chunk :: !Bool options_Inh_Chunk :: !Options textBlockMap_Inh_Chunk :: !(Map BlockInfo PP_Doc)

data Syn_Chunk

Constructors

Syn_Chunk |
Fields pps_Syn_Chunk :: !PP_Docs

wrap_Chunk :: T_Chunk -> Inh_Chunk -> Syn_Chunk

sem_Chunk_Chunk :: String -> T_Decl -> T_Decls -> T_Decls -> T_Decls -> T_Decls -> T_Decls -> T_Decls -> [String] -> T_Chunk

sem_Chunks :: Chunks -> T_Chunks

newtype T_Chunks

Constructors

T_Chunks (Bool -> Options -> Map BlockInfo PP_Doc -> PP_Docs) |

data Inh_Chunks

Constructors

Inh_Chunks |
Fields isToplevel_Inh_Chunks :: !Bool options_Inh_Chunks :: !Options textBlockMap_Inh_Chunks :: !(Map BlockInfo PP_Doc)

data Syn_Chunks

Constructors

Syn_Chunks |
Fields pps_Syn_Chunks :: !PP_Docs

wrap_Chunks :: T_Chunks -> Inh_Chunks -> Syn_Chunks

sem_Chunks_Cons :: T_Chunk -> T_Chunks -> T_Chunks

sem_Chunks_Nil :: T_Chunks

sem_DataAlt :: DataAlt -> T_DataAlt

newtype T_DataAlt

Constructors

T_DataAlt PP_Doc |

data Inh_DataAlt

Constructors

Inh_DataAlt |

data Syn_DataAlt

Constructors

Syn_DataAlt |
Fields pp_Syn_DataAlt :: !PP_Doc

wrap_DataAlt :: T_DataAlt -> Inh_DataAlt -> Syn_DataAlt

sem_DataAlt_DataAlt :: String -> T_Types -> T_DataAlt

sem_DataAlt_Record :: String -> T_NamedTypes -> T_DataAlt

sem_DataAlts :: DataAlts -> T_DataAlts

newtype T_DataAlts

Constructors

T_DataAlts PP_Docs |

data Inh_DataAlts

Constructors

Inh_DataAlts |

data Syn_DataAlts

Constructors

Syn_DataAlts |
Fields pps_Syn_DataAlts :: !PP_Docs

wrap_DataAlts :: T_DataAlts -> Inh_DataAlts -> Syn_DataAlts

sem_DataAlts_Cons :: T_DataAlt -> T_DataAlts -> T_DataAlts

sem_DataAlts_Nil :: T_DataAlts

sem_Decl :: Decl -> T_Decl

newtype T_Decl

Constructors

T_Decl (Bool -> Options -> PP_Doc) |

data Inh_Decl

Constructors

Inh_Decl |
Fields isToplevel_Inh_Decl :: !Bool options_Inh_Decl :: !Options

data Syn_Decl

Constructors

Syn_Decl |
Fields pp_Syn_Decl :: !PP_Doc

wrap_Decl :: T_Decl -> Inh_Decl -> Syn_Decl

sem_Decl_Bind :: T_Lhs -> T_Expr -> T_Decl

sem_Decl_BindLet :: T_Lhs -> T_Expr -> T_Decl

sem_Decl_Comment :: String -> T_Decl

sem_Decl_Data :: String -> [String] -> T_DataAlts -> Bool -> [String] -> T_Decl

sem_Decl_Decl :: T_Lhs -> T_Expr -> Set String -> Set String -> T_Decl

sem_Decl_EvalDecl :: String -> T_Lhs -> T_Expr -> T_Decl

sem_Decl_NewType :: String -> [String] -> String -> T_Type -> T_Decl

sem_Decl_PragmaDecl :: String -> T_Decl

sem_Decl_Resume :: Bool -> String -> T_Lhs -> T_Expr -> T_Decl

sem_Decl_TSig :: String -> T_Type -> T_Decl

sem_Decl_Type :: String -> [String] -> T_Type -> T_Decl

sem_Decls :: Decls -> T_Decls

newtype T_Decls

Constructors

T_Decls (Bool -> Options -> PP_Docs) |

data Inh_Decls

Constructors

Inh_Decls |
Fields isToplevel_Inh_Decls :: !Bool options_Inh_Decls :: !Options

data Syn_Decls

Constructors

Syn_Decls |
Fields pps_Syn_Decls :: !PP_Docs

wrap_Decls :: T_Decls -> Inh_Decls -> Syn_Decls

sem_Decls_Cons :: T_Decl -> T_Decls -> T_Decls

sem_Decls_Nil :: T_Decls

sem_Expr :: Expr -> T_Expr

newtype T_Expr

Constructors

T_Expr (Options -> PP_Doc) |

data Inh_Expr

Constructors

Inh_Expr |
Fields options_Inh_Expr :: !Options

data Syn_Expr

Constructors

Syn_Expr |
Fields pp_Syn_Expr :: !PP_Doc

wrap_Expr :: T_Expr -> Inh_Expr -> Syn_Expr

sem_Expr_App :: String -> T_Exprs -> T_Expr

sem_Expr_Case :: T_Expr -> T_CaseAlts -> T_Expr

sem_Expr_Do :: T_Decls -> T_Expr -> T_Expr

sem_Expr_InvokeExpr :: String -> T_Expr -> T_Exprs -> T_Expr

sem_Expr_Lambda :: T_Exprs -> T_Expr -> T_Expr

sem_Expr_Let :: T_Decls -> T_Expr -> T_Expr

sem_Expr_LineExpr :: T_Expr -> T_Expr

sem_Expr_PragmaExpr :: Bool -> Bool -> String -> T_Expr -> T_Expr

sem_Expr_ResultExpr :: String -> T_Expr -> T_Expr

sem_Expr_ResumeExpr :: String -> T_Expr -> T_Lhs -> T_Expr -> T_Expr

sem_Expr_SemFun :: String -> T_Exprs -> T_Expr -> T_Expr

sem_Expr_SimpleExpr :: String -> T_Expr

sem_Expr_TextExpr :: [String] -> T_Expr

sem_Expr_Trace :: String -> T_Expr -> T_Expr

sem_Expr_TupleExpr :: T_Exprs -> T_Expr

sem_Expr_TypedExpr :: T_Expr -> T_Type -> T_Expr

sem_Expr_UnboxedTupleExpr :: T_Exprs -> T_Expr

sem_Exprs :: Exprs -> T_Exprs

newtype T_Exprs

Constructors

T_Exprs (Options -> PP_Docs) |

data Inh_Exprs

Constructors

Inh_Exprs |
Fields options_Inh_Exprs :: !Options

data Syn_Exprs

Constructors

Syn_Exprs |
Fields pps_Syn_Exprs :: !PP_Docs

wrap_Exprs :: T_Exprs -> Inh_Exprs -> Syn_Exprs

sem_Exprs_Cons :: T_Expr -> T_Exprs -> T_Exprs

sem_Exprs_Nil :: T_Exprs

sem_Lhs :: Lhs -> T_Lhs

newtype T_Lhs

Constructors

T_Lhs (Options -> PP_Doc) |

data Inh_Lhs

Constructors

Inh_Lhs |
Fields options_Inh_Lhs :: !Options

data Syn_Lhs

Constructors

Syn_Lhs |
Fields pp_Syn_Lhs :: !PP_Doc

wrap_Lhs :: T_Lhs -> Inh_Lhs -> Syn_Lhs

sem_Lhs_Fun :: String -> T_Exprs -> T_Lhs

sem_Lhs_Pattern3 :: T_Pattern -> T_Lhs

sem_Lhs_Pattern3SM :: T_Pattern -> T_Lhs

sem_Lhs_TupleLhs :: [String] -> T_Lhs

sem_Lhs_UnboxedTupleLhs :: [String] -> T_Lhs

sem_Lhs_Unwrap :: String -> T_Lhs -> T_Lhs

sem_NamedType :: NamedType -> T_NamedType

newtype T_NamedType

Constructors

T_NamedType PP_Doc |

data Inh_NamedType

Constructors

Inh_NamedType |

data Syn_NamedType

Constructors

Syn_NamedType |
Fields pp_Syn_NamedType :: !PP_Doc

wrap_NamedType :: T_NamedType -> Inh_NamedType -> Syn_NamedType

sem_NamedType_Named :: Bool -> String -> T_Type -> T_NamedType

sem_NamedTypes :: NamedTypes -> T_NamedTypes

newtype T_NamedTypes

Constructors

T_NamedTypes PP_Docs |

data Inh_NamedTypes

Constructors

Inh_NamedTypes |

data Syn_NamedTypes

Constructors

Syn_NamedTypes |
Fields pps_Syn_NamedTypes :: !PP_Docs

wrap_NamedTypes :: T_NamedTypes -> Inh_NamedTypes -> Syn_NamedTypes

sem_NamedTypes_Cons :: T_NamedType -> T_NamedTypes -> T_NamedTypes

sem_NamedTypes_Nil :: T_NamedTypes

sem_Pattern :: Pattern -> T_Pattern

newtype T_Pattern

Constructors

T_Pattern (Options -> (Pattern, Bool, PP_Doc)) |

data Inh_Pattern

Constructors

Inh_Pattern |
Fields options_Inh_Pattern :: !Options

data Syn_Pattern

Constructors

Syn_Pattern |
Fields copy_Syn_Pattern :: !Pattern isUnderscore_Syn_Pattern :: !Bool pp_Syn_Pattern :: !PP_Doc

wrap_Pattern :: T_Pattern -> Inh_Pattern -> Syn_Pattern

sem_Pattern_Alias :: Identifier -> Identifier -> T_Pattern -> T_Pattern

sem_Pattern_Constr :: ConstructorIdent -> T_Patterns -> T_Pattern

sem_Pattern_Irrefutable :: T_Pattern -> T_Pattern

sem_Pattern_Product :: Pos -> T_Patterns -> T_Pattern

sem_Pattern_Underscore :: Pos -> T_Pattern

sem_Patterns :: Patterns -> T_Patterns

newtype T_Patterns

Constructors

T_Patterns (Options -> (Patterns, PP_Docs)) |

data Inh_Patterns

Constructors

Inh_Patterns |
Fields options_Inh_Patterns :: !Options

data Syn_Patterns

Constructors

Syn_Patterns |
Fields copy_Syn_Patterns :: !Patterns pps_Syn_Patterns :: !PP_Docs

wrap_Patterns :: T_Patterns -> Inh_Patterns -> Syn_Patterns

sem_Patterns_Cons :: T_Pattern -> T_Patterns -> T_Patterns

sem_Patterns_Nil :: T_Patterns

sem_Program :: Program -> T_Program

newtype T_Program

Constructors

T_Program (Options -> Map BlockInfo PP_Doc -> PP_Docs) |

data Inh_Program

Constructors

Inh_Program |
Fields options_Inh_Program :: !Options textBlockMap_Inh_Program :: !(Map BlockInfo PP_Doc)

data Syn_Program

Constructors

Syn_Program |
Fields output_Syn_Program :: !PP_Docs

wrap_Program :: T_Program -> Inh_Program -> Syn_Program

sem_Program_Program :: T_Chunks -> Bool -> T_Program

sem_Type :: Type -> T_Type

newtype T_Type

Constructors

T_Type PP_Doc |

data Inh_Type

Constructors

Inh_Type |

data Syn_Type

Constructors

Syn_Type |
Fields pp_Syn_Type :: !PP_Doc

wrap_Type :: T_Type -> Inh_Type -> Syn_Type

sem_Type_Arr :: T_Type -> T_Type -> T_Type

sem_Type_CtxApp :: [(String, [String])] -> T_Type -> T_Type

sem_Type_List :: T_Type -> T_Type

sem_Type_NontermType :: String -> [String] -> Bool -> T_Type

sem_Type_QuantApp :: String -> T_Type -> T_Type

sem_Type_SimpleType :: String -> T_Type

sem_Type_TEither :: T_Type -> T_Type -> T_Type

sem_Type_TIntMap :: T_Type -> T_Type

sem_Type_TMap :: T_Type -> T_Type -> T_Type

sem_Type_TMaybe :: T_Type -> T_Type

sem_Type_TupleType :: T_Types -> T_Type

sem_Type_TypeApp :: T_Type -> T_Types -> T_Type

sem_Type_UnboxedTupleType :: T_Types -> T_Type

sem_Types :: Types -> T_Types

newtype T_Types

Constructors

T_Types PP_Docs |

data Inh_Types

Constructors

Inh_Types |

data Syn_Types

Constructors

Syn_Types |
Fields pps_Syn_Types :: !PP_Docs

wrap_Types :: T_Types -> Inh_Types -> Syn_Types

sem_Types_Cons :: T_Type -> T_Types -> T_Types

sem_Types_Nil :: T_Types

sem_CaseAlt :: CaseAlt -> T_CaseAlt

newtype T_CaseAlt

Constructors

T_CaseAlt (Options -> PP_Doc) |

data Inh_CaseAlt

Constructors

Inh_CaseAlt |
Fields options_Inh_CaseAlt :: !Options

data Syn_CaseAlt

Constructors

Syn_CaseAlt |
Fields pp_Syn_CaseAlt :: !PP_Doc

wrap_CaseAlt :: T_CaseAlt -> Inh_CaseAlt -> Syn_CaseAlt

sem_CaseAlt_CaseAlt :: T_Lhs -> T_Expr -> T_CaseAlt

mkTupleExpr :: Bool -> Bool -> Exprs -> Expr

mkTupleType :: Bool -> Bool -> Types -> Type

mkTupleLhs :: Bool -> Bool -> [String] -> Lhs

type PP_Docs = [PP_Doc]

ppMultiSeqH :: [PP_Doc] -> PP_Doc -> PP_Doc

ppMultiSeqV :: [PP_Doc] -> PP_Doc -> PP_Doc

ppMultiSeq' :: (PP_Doc -> PP_Doc -> PP_Doc) -> [PP_Doc] -> PP_Doc -> PP_Doc