Skip to content

Commit e123202

Browse files
committed
Use macro for Builder's DisposeRef impl
1 parent 1171163 commit e123202

File tree

1 file changed

+3
-10
lines changed

1 file changed

+3
-10
lines changed

src/builder.rs

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use libc::{c_char, c_uint};
22
use ffi::prelude::{LLVMBuilderRef, LLVMValueRef};
33
use ffi::{core, LLVMBuilder, LLVMRealPredicate, LLVMIntPredicate};
4-
use cbox::{CSemiBox, DisposeRef};
4+
use cbox::CSemiBox;
55
use std::marker::PhantomData;
66
use std::mem;
77
use block::BasicBlock;
@@ -14,6 +14,7 @@ static NULL_NAME:[c_char; 1] = [0];
1414
/// This provides a uniform API for creating instructions and inserting them into a basic block.
1515
pub struct Builder(PhantomData<[u8]>);
1616
native_ref!(&Builder = LLVMBuilderRef);
17+
dispose!{Builder, LLVMBuilder, core::LLVMDisposeBuilder}
1718
macro_rules! bin_op(
1819
($name:ident, $func:ident) => (
1920
pub fn $name(&self, left: &Value, right: &Value) -> &Value {
@@ -187,12 +188,4 @@ impl Builder {
187188
panic!("expected numzextbers, got {:?}", at)
188189
}
189190
}
190-
}
191-
192-
impl DisposeRef for Builder {
193-
type RefTo = LLVMBuilder;
194-
#[inline(always)]
195-
unsafe fn dispose(ptr: LLVMBuilderRef) {
196-
core::LLVMDisposeBuilder(ptr)
197-
}
198-
}
191+
}

0 commit comments

Comments
 (0)