tipc
A TIP to LLVM compiler
Copier.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "Substituter.h"
4 
10 class Copier : public Substituter {
11 public:
12  Copier() = default;
13 
14  static std::shared_ptr<TipType> copy(std::shared_ptr<TipType> s);
15 
16  virtual void endVisit(TipAlpha *element) override;
17  virtual void endVisit(TipVar *element) override;
18 };
Makes a copy of a TipType.
Definition: Copier.h:10
virtual void endVisit(TipAlpha *element) override
Definition: Copier.cpp:17
Copier()=default
static std::shared_ptr< TipType > copy(std::shared_ptr< TipType > s)
Definition: Copier.cpp:7
Produces a type with designated variable substitutions.
Definition: Substituter.h:7
Class for free type variables.
Definition: TipAlpha.h:10
Class representing a type variable.
Definition: TipVar.h:13