summaryrefslogtreecommitdiff
path: root/TypeManager.hh
diff options
context:
space:
mode:
authorNagi5Yeq <wu@x-nagi.com>2020-05-25 16:14:41 +0800
committerNagi5Yeq <wu@x-nagi.com>2020-05-25 16:14:41 +0800
commit958a811b18aee04e4795cf003fd8e3db00312c91 (patch)
tree92cbc52f7560af0e08febfe1da38ed657ad29735 /TypeManager.hh
parentc5e9f890dab0e4595482301d77876793c8bceb8c (diff)
finish function calls and lvalue
Diffstat (limited to 'TypeManager.hh')
-rw-r--r--TypeManager.hh7
1 files changed, 7 insertions, 0 deletions
diff --git a/TypeManager.hh b/TypeManager.hh
index 35a5d78..9cfed8c 100644
--- a/TypeManager.hh
+++ b/TypeManager.hh
@@ -26,6 +26,13 @@ class TypeManager {
Value CreateOperation(UnaryOperator op, std::shared_ptr<Type> type, Value v,
Context* context);
+ Value CreateCast(std::shared_ptr<Type> DstType,
+ std::shared_ptr<Type> SrcType, Value v, Context* context);
+
+ std::shared_ptr<FunctionType>
+ CreateFunctionType(std::shared_ptr<Type> ReturnType,
+ std::vector<std::shared_ptr<Type>> ArgTypes);
+
private:
std::vector<std::shared_ptr<Type>> builtins_;
std::vector<std::shared_ptr<Type>> types_;