pub const add_completions: []const u8 = @embedFile("add_completions.txt"); const std = @import("std"); const Environment = @import("../env.zig"); pub const FirstLetter = enum(u8) { a = 'a', b = 'b', c = 'c', d = 'd', e = 'e', f = 'f', g = 'g', h = 'h', i = 'i', j = 'j', k = 'k', l = 'l', m = 'm', n = 'n', o = 'o', p = 'p', q = 'q', r = 'r', s = 's', t = 't', u = 'u', v = 'v', w = 'w', x = 'x', y = 'y', z = 'z', }; pub const Index = std.EnumArray(FirstLetter, []const []const u8); pub const index: Index = if (Environment.isDebug) Index.initFill(&.{"OOMWorkAround"}) else brk: { var array: Index = Index.initFill(&[_][]const u8{}); var i: u8 = 'a'; var tokenizer = std.mem.tokenize(u8, add_completions, "\n"); while (i <= 'z') { var init_tokenizer = tokenizer; var count: usize = 0; @setEvalBranchQuota(9999999); while (init_tokenizer.next()) |pkg| { if (pkg.len == 0) continue; if (pkg[0] == i) { count += 1; } else { break; } } var record: [count][]const u8 = undefined; var record_i: usize = 0; var next_i = i + 1; while (tokenizer.next()) |pkg| { if (pkg.len == 0) continue; if (pkg[0] == i) { record[record_i] = pkg; record_i += 1; } else { next_i = pkg[0]; break; } } array.set(@intToEnum(FirstLetter, i), &record); @setEvalBranchQuota(999999); i = next_i; } break :brk array; }; pub const biggest_list: usize = brk: { var a = index; var iter = a.iterator(); var max: usize = 0; while (iter.next()) |list| { max = @max(list.value.len, max); } break :brk max; }; const index_blob = "add_completions.index.blob"; test "entries" { const items = index.get(FirstLetter.r); var found_react = false; for (items) |item| { try std.testing.expectEqual(item[0], 'r'); if (std.mem.eql(u8, item, "react")) { found_react = true; } } try std.testing.expect(found_react); } e='dave/assert-double-is-valid'>dave/assert-double-is-valid Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
path: root/examples/react-file-system-router/pages (unfollow)
AgeCommit message (Expand)AuthorFilesLines
2023-10-09added commands (#6314)Gravatar babar 1-1/+2
2023-10-09Update README.md (#6291)Gravatar TPLJ 1-1/+1
2023-10-09docs: fixing a couple typos (#6331)Gravatar Michael Di Prisco 2-2/+2
2023-10-09fix: support uint8 exit code range (#6303)Gravatar Liz 2-2/+11
2023-10-09Fix array variables preview in debugger (#6379)Gravatar 2hu 1-1/+4
2023-10-07feat(KeyObject) (#5940)Gravatar Ciro Spaciari 106-67/+9342
2023-10-07Exclude more filesGravatar Jarred Sumner 1-1/+1
2023-10-07Exclude more filesGravatar Jarred Sumner 1-1/+2
2023-10-07Update settings.jsonGravatar Jarred Sumner 1-1/+2
2023-10-07Update settings.jsonGravatar Jarred Sumner 1-2/+3
2023-10-06fix a couple install testsGravatar Dylan Conway 1-8/+8
2023-10-06formatGravatar Dylan Conway 1-1/+2
2023-10-06Fix memory leak in fetch() (#6350)Gravatar Jarred Sumner 1-2/+0
2023-10-06[types] allow onLoad plugin callbacks to return undefined (#6346)Gravatar Silver 1-1/+1
2023-10-06docs: `file.stream()` is not a promise (#6337)Gravatar Paul Nodet 1-1/+1