| ... | ... | @@ -642,6 +642,19 @@ pub const ObjectIndex = enum(u32) { |
| 642 | 642 | return .{ k[0..len], v[0..len] }; |
| 643 | 643 | } |
| 644 | 644 | |
| 645 | pub fn getAny(this: ObjectIndex, needle: []const u8) ?ValueIndex { |
| 646 | const keys, const values = this.to(); |
| 647 | for (keys, values) |k, v| { |
| 648 | if (std.mem.eql(u8, needle, k.to())) { |
| 649 | if (v.v() == .null) { |
| 650 | return null; |
| 651 | } |
| 652 | return v; |
| 653 | } |
| 654 | } |
| 655 | return null; |
| 656 | } |
| 657 | |
| 645 | 658 | pub fn get(this: ObjectIndex, needle: []const u8, comptime tag: Value.Tag) ?ValueIndex { |
| 646 | 659 | const keys, const values = this.to(); |
| 647 | 660 | for (keys, values) |k, v| { |