pub struct DataSpace {
pub inner: *mut u8,
/* private fields */
}Fields§
§inner: *mut u8Implementations§
Source§impl DataSpace
impl DataSpace
Sourcepub fn new(num_pages: usize) -> Self
pub fn new(num_pages: usize) -> Self
Examples found in repository?
examples/vm.rs (line 101)
85 pub fn new(data_pages: usize) -> VM {
86 let mut labels = Vec::with_capacity(LABEL_COUNT as _);
87 labels.resize(LABEL_COUNT as _, 0);
88 let mut vm = VM {
89 current_task: 0,
90 tasks: [
91 // Only operator task has its own input buffer.
92 Task::new_terminal(),
93 Task::new_background(),
94 Task::new_background(),
95 Task::new_background(),
96 Task::new_background(),
97 ],
98 last_error: None,
99 handler: 0,
100 wordlist: Wordlist::with_capacity(1000),
101 data_space: DataSpace::new(data_pages),
102 tkn: Some(String::with_capacity(64)),
103 outbuf: Some(String::with_capacity(128)),
104 hldbuf: String::with_capacity(128),
105 references: ForwardReferences::new(),
106 now: Instant::now(),
107 forward_bitset: BitSet::with_capacity(LABEL_COUNT),
108 resolved_bitset: BitSet::with_capacity(LABEL_COUNT),
109 labels,
110 };
111 vm.add_core();
112 vm.add_output();
113 vm.add_tools();
114 vm.add_environment();
115 vm.add_facility();
116 vm.add_float();
117 vm.add_units();
118 vm.add_file_access();
119 vm.add_loader();
120
121 vm.load_core_fth();
122
123 vm
124 }pub fn with_capacity(cap: usize) -> Self
pub fn system_variables(&self) -> &SystemVariables
pub fn system_variables_mut(&mut self) -> &mut SystemVariables
Trait Implementations§
Auto Trait Implementations§
impl Freeze for DataSpace
impl RefUnwindSafe for DataSpace
impl !Send for DataSpace
impl !Sync for DataSpace
impl Unpin for DataSpace
impl UnwindSafe for DataSpace
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more