Lines Matching refs:TupleKindPtr
20 struct TupleKindPtr : public std::shared_ptr<const TupleKind> { struct
22 TupleKindPtr() = default; argument
23 TupleKindPtr(Fixed);
24 TupleKindPtr(Base base) : Base(base) {} in TupleKindPtr() function
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) {} in Kind()