LCOV - code coverage report
Current view: top level - inc/parsingAnalysis/ast/loops - ast_pass.h (source / functions) Coverage Total Hit
Test: coverage.info Lines: 18.2 % 22 4
Test Date: 2025-04-18 15:53:49 Functions: 25.0 % 8 2

            Line data    Source code
       1              : #ifndef AST_PASS_H
       2              : #define AST_PASS_H
       3              : 
       4              : #include "../ast.h"
       5              : #include <memory>
       6              : 
       7              : namespace nicole {
       8              : 
       9              : class AST_PASS : public AST {
      10              : private:
      11              :   std::shared_ptr<AST> fatherLoop_;
      12              : 
      13              : public:
      14              :   explicit AST_PASS(const long long unsigned nodeId,
      15              :                     const SourceLocation &srcLoc,
      16              :                     const std::shared_ptr<AST> &fatherLoop) noexcept
      17            3 :       : AST(nodeId, AST_TYPE::PASS, srcLoc), fatherLoop_{fatherLoop} {}
      18              : 
      19           27 :   [[nodiscard]] const std::shared_ptr<AST> &fatherLoop() const noexcept {
      20           27 :     return fatherLoop_;
      21           27 :   }
      22              : 
      23              :   [[nodiscard]] std::expected<std::string, Error>
      24            0 :   accept(const PrintTree &visitor) const noexcept override {
      25            0 :     return visitor.visit(this);
      26            0 :   }
      27              : 
      28              :   [[nodiscard]] std::expected<bool, Error>
      29            0 :   accept(const ValidateTree &visitor) const noexcept override {
      30            0 :     return visitor.visit(this);
      31            0 :   }
      32              : 
      33              :   [[nodiscard]] std::expected<std::monostate, Error>
      34            0 :   accept(const FillSemanticInfo &visitor) const noexcept override {
      35            0 :     return visitor.visit(this);
      36            0 :   }
      37              : 
      38              :   [[nodiscard]] std::expected<std::shared_ptr<Type>, Error>
      39            0 :   accept(const TypeAnalysis &visitor) const noexcept override {
      40            0 :     return visitor.visit(this);
      41            0 :   }
      42              : 
      43              :   [[nodiscard]] std::expected<std::monostate, Error>
      44            0 :   accept(const Monomorphize &visitor) const noexcept override {
      45            0 :     return visitor.visit(this);
      46            0 :   }
      47              : 
      48              :   [[nodiscard]] std::expected<std::shared_ptr<llvm::Value>, Error>
      49            0 :   accept(const CodeGeneration &visitor) const noexcept override {
      50            0 :     return visitor.visit(this);
      51            0 :   }
      52              : };
      53              : 
      54              : } // namespace nicole
      55              : 
      56              : #endif
        

Generated by: LCOV version 2.0-1