You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: types.rs
    path of file: ./repos/mimalloc-rust/mimalloc-rust-sys/src
    
    the code of the file until where you have to start completion: use crate::utils::BitField;

pub type mi_thread_free_t = usize;

pub type mi_page_kind_t = cty::c_uint;
pub const mi_page_kind_MI_PAGE_SMALL: mi_page_kind_t = 0;
pub const mi_page_kind_MI_PAGE_MEDIUM: mi_page_kind_t = 1;
pub const mi_page_kind_MI_PAGE_LARGE: mi_page_kind_t = 2;
pub const mi_page_kind_MI
    
    pub fn new_bitfield_1(in_full: u8, has_aligned: u8) -> BitField<[u8; 1usize]> {
        let mut _bitfield_unit: BitField<[u8; 1usize]> = Default::default();
        _bitfield_unit.set(0usize, 1u8, {
            let in_full: u8 = unsafe { ::core::mem::transmute(in_full) };
            in_full as u64
        });
        _bitfield_unit.set(1usize, 1u8, {
            let has_aligned: u8 = unsafe { ::core::mem::transmute(has_aligned) };
            has_aligned as u64
        });
        _bitfield_unit
    }