Kaynağa Gözat

needs new file

QlowB 7 yıl önce
ebeveyn
işleme
d7a9ec2bcb
2 değiştirilmiş dosya ile 50 ekleme ve 0 silme
  1. 13 0
      src/TypeVisitor.cpp
  2. 37 0
      src/TypeVisitor.h

+ 13 - 0
src/TypeVisitor.cpp

@@ -0,0 +1,13 @@
+#include "TypeVisitor.h"
+
+using namespace qlow;
+
+
+
+sem::Type sem::TypeVisitor::visit(sem::Expression& expr, const sem::SymbolTable<sem::Class>& classes)
+{
+    
+}
+
+
+

+ 37 - 0
src/TypeVisitor.h

@@ -0,0 +1,37 @@
+#ifndef QLOW_SEM_TYPEVISITOR_H
+#define QLOW_SEM_TYPEVISITOR_H
+
+#include "Visitor.h"
+#include "Semantic.h"
+
+namespace qlow
+{
+    namespace sem
+    {
+        class TypeVisitor;
+    }
+}
+
+
+class qlow::sem::TypeVisitor :
+    public Visitor<
+        qlow::sem::Type,
+        const sem::SymbolTable<sem::Class>,
+        
+        sem::Expression,
+        sem::Variable,
+        sem::UnaryOperation,
+        sem::BinaryOperation,
+        sem::FeatureCallExpression
+    >
+{
+    
+public:
+    qlow::sem::Type visit(sem::Expression& expr, const sem::SymbolTable<sem::Class>& classes) override;
+    qlow::sem::Type visit(sem::Expression& expr, const sem::SymbolTable<sem::Class>& classes) override;
+    qlow::sem::Type visit(sem::Expression& expr, const sem::SymbolTable<sem::Class>& classes) override;
+    qlow::sem::Type visit(sem::Expression& expr, const sem::SymbolTable<sem::Class>& classes) override;
+    qlow::sem::Type visit(sem::Expression& expr, const sem::SymbolTable<sem::Class>& classes) override;
+};
+
+#endif // QLOW_SEM_TYPEVISITOR_H