#![no_std]
#![feature(str_from_utf16_endian)]
#![feature(allocator_api)]
#![feature(const_trait_impl)]
#![feature(slice_ptr_get)]
#![warn(internal_features)]
#![feature(link_llvm_intrinsics)]
#![warn(unsafe_op_in_unsafe_fn)]
#![warn(internal_features)]
#![feature(once_cell_get_mut)]
#![feature(once_cell_try)]
#![feature(type_alias_impl_trait)]
#![feature(stmt_expr_attributes)]
pub mod cputure;
pub mod vmcs;
pub mod pagetable;
pub mod error;
pub mod contorls;
pub mod vmxerror;
pub mod vmexit;
pub mod vmstack;
pub mod share_data;
pub mod ept;
pub mod invvpid;
pub mod invept;
pub mod vmxon;
pub mod x86;
pub mod x86_64;
pub mod vt_x;
#[cfg(not(test))]
use core::panic::PanicInfo;
extern crate alloc;
use log::*;