pipeline_script/llvm/value/
bool.rs

1use crate::llvm::value::LLVMValue;
2use llvm_sys::core::LLVMIsUndef;
3use llvm_sys::prelude::LLVMValueRef;
4
5#[derive(Clone, Debug)]
6pub struct BoolValue {
7    reference: LLVMValueRef,
8}
9impl BoolValue {
10    pub fn new(reference: LLVMValueRef) -> Self {
11        Self { reference }
12    }
13    pub fn get_reference(&self) -> LLVMValueRef {
14        self.reference
15    }
16    pub fn is_undef(&self) -> bool {
17        unsafe { LLVMIsUndef(self.reference) == 1 }
18    }
19}
20impl From<BoolValue> for LLVMValue {
21    fn from(value: BoolValue) -> Self {
22        LLVMValue::Bool(value)
23    }
24}