|
tipc
A TIP to LLVM compiler
|
Makes a copy of a TipType. More...
#include <Copier.h>


Public Member Functions | |
| Copier ()=default | |
| virtual void | endVisit (TipAlpha *element) override |
| virtual void | endVisit (TipVar *element) override |
| Substitute if variable is the target. More... | |
Public Member Functions inherited from Substituter | |
| Substituter (TipVar *t, std::shared_ptr< TipType > s) | |
| std::shared_ptr< TipType > | getResult () |
| virtual void | endVisit (TipFunction *element) override |
| virtual void | endVisit (TipInt *element) override |
| virtual void | endVisit (TipMu *element) override |
| virtual void | endVisit (TipRecord *element) override |
| virtual void | endVisit (TipAbsentField *element) override |
| virtual void | endVisit (TipRef *element) override |
Public Member Functions inherited from TipTypeVisitor | |
| virtual bool | visit (TipAlpha *element) |
| virtual bool | visit (TipFunction *element) |
| virtual bool | visit (TipInt *element) |
| virtual bool | visit (TipMu *element) |
| virtual bool | visit (TipRecord *element) |
| virtual bool | visit (TipAbsentField *element) |
| virtual bool | visit (TipRef *element) |
| virtual bool | visit (TipVar *element) |
Static Public Member Functions | |
| static std::shared_ptr< TipType > | copy (std::shared_ptr< TipType > s) |
Static Public Member Functions inherited from Substituter | |
| static std::shared_ptr< TipType > | substitute (TipType *t, TipVar *v, std::shared_ptr< TipType > s) |
| Substitute for instances of variable in a target type. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Substituter | |
| Substituter ()=default | |
Protected Attributes inherited from Substituter | |
| std::vector< std::shared_ptr< TipType > > | visitedTypes |
Makes a copy of a TipType.
This subtype of the Substituter overrides the behavior for TipVar and TipAlpha to just copy that node rather than perform a substitution.
|
default |
|
overridevirtual |
Reimplemented from Substituter.
Reimplemented in FreshAlphaCopier.
|
overridevirtual |
Substitute if variable is the target.
Reimplemented from Substituter.