public:
/** Create a new Datatype of the given name. */
+ inline explicit Datatype(std::string name);
+
+ /**
+ * Create a new Datatype of the given name, with the given
+ * parameterization.
+ */
inline explicit Datatype(std::string name, std::vector<Type>& params);
/** Add a constructor to this Datatype. */
return d_name;
}
+inline Datatype::Datatype(std::string name) :
+ d_name(name),
+ d_params(),
+ d_constructors(),
+ d_resolved(false),
+ d_self() {
+}
+
inline Datatype::Datatype(std::string name, std::vector<Type>& params) :
d_name(name),
d_params(params),