Home | History | Annotate | Download | only in interface

Lines Matching defs:TupleKindPtr

20 struct TupleKindPtr : public std::shared_ptr<const TupleKind> {
22 TupleKindPtr() = default;
23 TupleKindPtr(Fixed);
24 TupleKindPtr(Base base) : Base(base) {}
25 TupleKindPtr(const std::string &name);
26 TupleKindPtr(const TupleKindPtr &left, const TupleKindPtr &right);
31 using Substitution = std::unordered_map<std::string, TupleKindPtr>;
45 virtual TupleKindPtr apply(const Substitution &subs,
46 const TupleKindPtr &self) const;
47 virtual TupleKindPtr left() const;
48 virtual TupleKindPtr right() const;
55 struct Kind : public std::vector<TupleKindPtr> {
57 Kind(std::initializer_list<TupleKindPtr> list) : vector(list) {}