/development/std/fmt/implementations.nct
implementations.nct
see ./index.nct
see ./formatting.nct
use /ptr.from_ref
use /internal/ptr.slice_from_raw_parts_value
use /string.String
//! Standard Format implementations for compiler built-in and owned text types.
instance str {
method &self.format_into(output: &+String): void {
append_str(output, self)
return
}
}
instance String {
method &self.format_into(output: &+String): void {
append_string(output, self)
return
}
}
instance bool {
method &self.format_into(output: &+String): void {
append_bool(output, copy_value(self))
return
}
}
instance i8 {
method &self.format_into(output: &+String): void {
append_i8(output, copy_value(self))
return
}
}
instance i16 {
method &self.format_into(output: &+String): void {
append_i16(output, copy_value(self))
return
}
}
instance i32 {
method &self.format_into(output: &+String): void {
append_i32(output, copy_value(self))
return
}
}
instance i64 {
method &self.format_into(output: &+String): void {
append_i64(output, copy_value(self))
return
}
}
instance isize {
method &self.format_into(output: &+String): void {
append_isize(output, copy_value(self))
return
}
}
instance u8 {
method &self.format_into(output: &+String): void {
append_u8(output, copy_value(self))
return
}
}
instance u16 {
method &self.format_into(output: &+String): void {
append_u16(output, copy_value(self))
return
}
}
instance u32 {
method &self.format_into(output: &+String): void {
append_u32(output, copy_value(self))
return
}
}
instance u64 {
method &self.format_into(output: &+String): void {
append_u64(output, copy_value(self))
return
}
}
instance usize {
method &self.format_into(output: &+String): void {
append_usize(output, copy_value(self))
return
}
}
func copy_value<T>(value: &T): T where copy T {
let pointer: *T = from_ref(value)
let values: &[T] = slice_from_raw_parts_value(pointer, 1)
return values[0]
}