initial commit
This commit is contained in:
4
exercises/03_ticket_v1/09_heap/Cargo.toml
Normal file
4
exercises/03_ticket_v1/09_heap/Cargo.toml
Normal file
@@ -0,0 +1,4 @@
|
||||
[package]
|
||||
name = "heap"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
28
exercises/03_ticket_v1/09_heap/src/lib.rs
Normal file
28
exercises/03_ticket_v1/09_heap/src/lib.rs
Normal file
@@ -0,0 +1,28 @@
|
||||
pub struct Ticket {
|
||||
title: String,
|
||||
description: String,
|
||||
status: String,
|
||||
}
|
||||
|
||||
// TODO: based on what you learned in this section, replace `todo!()` with
|
||||
// the correct **stack size** for the respective type.
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::Ticket;
|
||||
use std::mem::size_of;
|
||||
|
||||
#[test]
|
||||
fn string_size() {
|
||||
assert_eq!(size_of::<String>(), todo!());
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn ticket_size() {
|
||||
// This is a tricky question!
|
||||
// The "intuitive" answer happens to be the correct answer this time,
|
||||
// but, in general, the memory layout of structs is a more complex topic.
|
||||
// If you're curious, check out the "Type layout" section of The Rust Reference
|
||||
// https://doc.rust-lang.org/reference/type-layout.html for more information.
|
||||
assert_eq!(size_of::<Ticket>(), todo!());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user