2 #ifndef HOBBES_LANG_TYPEPREDS_APPENDSTO_HPP_INCLUDED 3 #define HOBBES_LANG_TYPEPREDS_APPENDSTO_HPP_INCLUDED 38 virtual SymSet bindings()
const = 0;
45 static std::string constraintName();
std::shared_ptr< PolyType > PolyTypePtr
Definition: type.H:23
Definition: tyunqualify.H:20
Definition: appendsto.H:15
bool satisfied(const UnqualifierPtr &, const TEnvPtr &, const ConstraintPtr &, std::vector< std::pair< std::string, std::shared_ptr< Expr > > > *)
bool satisfiable(const UnqualifierPtr &, const TEnvPtr &, const ConstraintPtr &, std::vector< std::pair< std::string, std::shared_ptr< Expr > > > *)
MonoTypePtr leftType
Definition: appendsto.H:16
std::set< std::string > SymSet
Definition: tyunqualify.H:12
MonoTypePtr rightType
Definition: appendsto.H:17
std::vector< FunDep > FunDeps
Definition: tyunqualify.H:17
MonoType::ptr MonoTypePtr
Definition: type.H:71
std::vector< ATEliminator * > ATEliminators
Definition: appendsto.H:60
std::shared_ptr< Expr > ExprPtr
Definition: expr.H:58
ATEliminators eliminators
Definition: appendsto.H:61
bool dec(const ConstraintPtr &, AppendsTo *)
Definition: appendsto.C:15
std::shared_ptr< TEnv > TEnvPtr
Definition: type.H:80
std::vector< Definition > Definitions
Definition: expr.H:62
Definition: appendsto.H:42
uint32_t result
Definition: regex.C:376
std::shared_ptr< Constraint > ConstraintPtr
Definition: type.H:33
Definition: appendsto.H:23
bool refine(const TEnvPtr &tenv, const ConstraintPtr &c, MonoTypeUnifier *s, Definitions *)
Definition: typeinf.C:485
MonoTypePtr resultType
Definition: appendsto.H:18
T lookup(const std::map< K, T > &tenv, const K &n)
Definition: cc.C:518
std::vector< annmsg > annmsgs
Definition: lannotation.H:58