29 lines
501 B
Zig
29 lines
501 B
Zig
const std = @import("std");
|
|
const Position = @This();
|
|
|
|
x: i64,
|
|
y: i64,
|
|
|
|
pub fn init(x: i64, y: i64) Position {
|
|
return Position{
|
|
.x = x,
|
|
.y = y
|
|
};
|
|
}
|
|
|
|
pub fn eql(self: Position, other: Position) bool {
|
|
return self.x == other.x and self.y == other.y;
|
|
}
|
|
|
|
pub fn format(
|
|
self: Position,
|
|
comptime fmt: []const u8,
|
|
options: std.fmt.FormatOptions,
|
|
writer: anytype,
|
|
) !void {
|
|
_ = fmt;
|
|
_ = options;
|
|
|
|
try writer.print("{{ {}, {} }}", .{self.x, self.y});
|
|
}
|