Focused utility traits and value types for MoonBit
Dependencies
fn[T : Copy] duplicate(value : T) -> (T, T) {
(Copy::copy(value), Copy::copy(value))
}
test {
debug_inspect(duplicate(42), content="(42, 42)")
}struct Counter {
mut value : Int
}
impl Copy for Counter with fn copy(self) {
Counter::{ value: self.value }
}
test {
let source = Counter::{ value: 1 }
let copied = Copy::copy(source)
copied.value = 2
debug_inspect((source.value, copied.value), content="(1, 2)")
}let root = @typed_path.AbsolutePath(@path.Path("/workspace/./project"))
let source = @typed_path.RelativePath(@path.Path("src/../README.md"))
let readme = @typed_path.Path::join(root, source)
println(@typed_path.Path::to_string(readme))Focused utility traits and value types for MoonBit
Dependencies