llvm_quick/core/values/
usage.rs

1use llvm_sys::core::*;
2
3use crate::opaque::Opaque;
4use crate::type_tag::*;
5use crate::*;
6
7impl<T: TypeTag> Value<T> {
8    pub fn get_first_use(&self) -> Option<&Use> {
9        unsafe { Use::from_ptr(LLVMGetFirstUse(self.as_raw())) }
10    }
11}
12
13impl Use {
14    pub fn get_next_use(&self) -> Option<&Use> {
15        unsafe { Use::from_ptr(LLVMGetNextUse(self.as_raw())) }
16    }
17
18    pub fn get_user(&self) -> &Value<any> {
19        unsafe { Value::from_raw(LLVMGetUser(self.as_raw())) }
20    }
21
22    pub fn get_used_value(&self) -> &Value<any> {
23        unsafe { Value::from_raw(LLVMGetUsedValue(self.as_raw())) }
24    }
25}