add generics example
parent
905ed28663
commit
300c8b0c36
@ -0,0 +1,27 @@
|
||||
const std = @import("std");
|
||||
|
||||
fn List(comptime T: type) type {
|
||||
return struct {
|
||||
items: []T,
|
||||
len: usize,
|
||||
};
|
||||
}
|
||||
|
||||
pub fn main() void {
|
||||
var buffer: [10]i32 = undefined;
|
||||
|
||||
var list = List(i32){
|
||||
.items = &buffer,
|
||||
.len = 0,
|
||||
};
|
||||
|
||||
// the same thing with an intermediate const to make it a little bit more
|
||||
// clear:
|
||||
// const IntList = List(i32);
|
||||
// var list = IntList{
|
||||
// .items = &buffer,
|
||||
// .len = 0,
|
||||
// };
|
||||
|
||||
std.debug.print("{}\n", .{list.items.len});
|
||||
}
|
Loading…
Reference in New Issue