GCC Code Coverage Report


Directory: ../
File: src/irgenerator/LLVMExprResult.h
Date: 2024-11-22 23:10:59
Exec Total Coverage
Lines: 1 1 100.0%
Functions: 1 1 100.0%
Branches: 0 0 -%

Line Branch Exec Source
1 // Copyright (c) 2021-2024 ChilliBits. All rights reserved.
2
3 #pragma once
4
5 #include <llvm/IR/Value.h>
6
7 namespace spice::compiler {
8
9 // Forward declarations
10 class SymbolTableEntry;
11 class ASTNode;
12
13 // For routing through multiple LLVM values at once
14 struct LLVMExprResult {
15 llvm::Value *value = nullptr;
16 llvm::Constant *constant = nullptr;
17 llvm::Value *ptr = nullptr;
18 llvm::Value *refPtr = nullptr;
19 SymbolTableEntry *entry = nullptr;
20 const ASTNode *node = nullptr;
21
22 1922 [[nodiscard]] bool isTemporary() const { return entry == nullptr; }
23 };
24
25 } // namespace spice::compiler
26