mirror of
https://codeberg.org/ziglings/exercises.git
synced 2024-12-27 01:46:29 +00:00
methods NOT namespaced like i expected
This commit is contained in:
parent
843fd65882
commit
290ba908ec
2 changed files with 23 additions and 9 deletions
|
@ -176,11 +176,8 @@ const TripItem = union(enum) {
|
||||||
path: *const Path,
|
path: *const Path,
|
||||||
|
|
||||||
// This is a little helper function to print the two different
|
// This is a little helper function to print the two different
|
||||||
// types of item correctly. Note how this "print()" is namespaced
|
// types of item correctly.
|
||||||
// to the TripItem union and doesn't interfere with calling the
|
fn printMe(self: TripItem) void {
|
||||||
// "print()" from the standard library we imported at the top of
|
|
||||||
// this program.
|
|
||||||
fn print(self: TripItem) void {
|
|
||||||
switch (self) {
|
switch (self) {
|
||||||
// Oops! The hermit forgot how to capture the union values
|
// Oops! The hermit forgot how to capture the union values
|
||||||
// in a switch statement. Please capture both values as
|
// in a switch statement. Please capture both values as
|
||||||
|
@ -427,7 +424,7 @@ fn printTrip(trip: []?TripItem) void {
|
||||||
while (i > 0) {
|
while (i > 0) {
|
||||||
i -= 1;
|
i -= 1;
|
||||||
if (trip[i] == null) continue;
|
if (trip[i] == null) continue;
|
||||||
trip[i].?.print();
|
trip[i].?.printMe();
|
||||||
}
|
}
|
||||||
|
|
||||||
print("\n", .{});
|
print("\n", .{});
|
||||||
|
|
|
@ -1,14 +1,31 @@
|
||||||
188,189c188,189
|
185,186c185,186
|
||||||
< .place => print("{s}", .{p.name}),
|
< .place => print("{s}", .{p.name}),
|
||||||
< .path => print("--{}->", .{p.dist}),
|
< .path => print("--{}->", .{p.dist}),
|
||||||
---
|
---
|
||||||
> .place => |p| print("{s}", .{p.name}),
|
> .place => |p| print("{s}", .{p.name}),
|
||||||
> .path => |p| print("--{}->", .{p.dist}),
|
> .path => |p| print("--{}->", .{p.dist}),
|
||||||
251c251
|
248c248
|
||||||
< if (place == entry.*.?.place) return entry;
|
< if (place == entry.*.?.place) return entry;
|
||||||
---
|
---
|
||||||
> if (place == entry.*.?.place) return &entry.*.?;
|
> if (place == entry.*.?.place) return &entry.*.?;
|
||||||
305c305
|
302c302
|
||||||
< fn getTripTo(self: *HermitsNotebook, trip: []?TripItem, dest: *Place) void {
|
< fn getTripTo(self: *HermitsNotebook, trip: []?TripItem, dest: *Place) void {
|
||||||
---
|
---
|
||||||
> fn getTripTo(self: *HermitsNotebook, trip: []?TripItem, dest: *Place) TripError!void {
|
> fn getTripTo(self: *HermitsNotebook, trip: []?TripItem, dest: *Place) TripError!void {
|
||||||
|
336d335
|
||||||
|
< // Note: you do not need to fix anything here.
|
||||||
|
419,422c418
|
||||||
|
< // We convert the usize length to a u8 with @intCast(), a
|
||||||
|
< // builtin function just like @import(). We'll learn about
|
||||||
|
< // these properly in a later exercise.
|
||||||
|
< var i: u8 = @intCast(u8, trip.len);
|
||||||
|
---
|
||||||
|
> var i: u8 = @intCast(u8, trip.len); // convert usize length
|
||||||
|
449,452c445,446
|
||||||
|
< // Search" (BFS).
|
||||||
|
< //
|
||||||
|
< // By tracking "lowest cost" paths, we can also say that we're
|
||||||
|
< // performing a "least-cost search".
|
||||||
|
---
|
||||||
|
> // Search" (BFS). By tracking "lowest cost" paths, we can also say
|
||||||
|
> // that we're performing a "least-cost search".
|
||||||
|
|
Loading…
Reference in a new issue