summaryrefslogtreecommitdiff
path: root/src/HangulData.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/HangulData.zig')
-rw-r--r--src/HangulData.zig8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/HangulData.zig b/src/HangulData.zig
index 4d80c99..b97424c 100644
--- a/src/HangulData.zig
+++ b/src/HangulData.zig
@@ -15,7 +15,7 @@ pub const Syllable = enum {
15 15
16allocator: mem.Allocator, 16allocator: mem.Allocator,
17s1: []u16 = undefined, 17s1: []u16 = undefined,
18s2: []Syllable = undefined, 18s2: []u3 = undefined,
19 19
20const Self = @This(); 20const Self = @This();
21 21
@@ -35,8 +35,8 @@ pub fn init(allocator: mem.Allocator) !Self {
35 for (0..stage_1_len) |i| self.s1[i] = try reader.readInt(u16, endian); 35 for (0..stage_1_len) |i| self.s1[i] = try reader.readInt(u16, endian);
36 36
37 const stage_2_len: u16 = try reader.readInt(u16, endian); 37 const stage_2_len: u16 = try reader.readInt(u16, endian);
38 self.s2 = try allocator.alloc(Syllable, stage_2_len); 38 self.s2 = try allocator.alloc(u3, stage_2_len);
39 for (0..stage_2_len) |i| self.s2[i] = @enumFromInt(try reader.readInt(u8, endian)); 39 for (0..stage_2_len) |i| self.s2[i] = @intCast(try reader.readInt(u8, endian));
40 40
41 return self; 41 return self;
42} 42}
@@ -48,5 +48,5 @@ pub fn deinit(self: *Self) void {
48 48
49/// Returns the Hangul syllable type for `cp`. 49/// Returns the Hangul syllable type for `cp`.
50pub inline fn syllable(self: Self, cp: u21) Syllable { 50pub inline fn syllable(self: Self, cp: u21) Syllable {
51 return self.s2[self.s1[cp >> 8] + (cp & 0xff)]; 51 return @enumFromInt(self.s2[self.s1[cp >> 8] + (cp & 0xff)]);
52} 52}