pub fn parseCHAR_LITERAL(p: *Parser) Error!bool p: *ParserMaxDepth3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880 pub fn parseCHAR_LITERAL(p: *Parser) Error!bool {
const def_index = @backingInt(Def.defCHAR_LITERAL);
if (p.depths[def_index] > max_depth) return error.MaxDepth;
p.depths[def_index] += 1;
defer p.depths[def_index] -= 1;
return blk_0: {
const pos_0 = p.i;
if (try p.parseskip() and (p.i < p.source.len and switch (p.source[p.i]) {
'\''...'\'',
=> blk_1: {
p.i += 1;
break :blk_1 true;
},
else => false,
}) and blk_1: {
var i_1: usize = 0;
while (try p.parsechar_char()) {
if (i_1 > max_depth) return error.MaxDepth;
i_1 += 1;
}
break :blk_1 true;
} and (p.i < p.source.len and switch (p.source[p.i]) {
'\''...'\'',
=> blk_1: {
p.i += 1;
break :blk_1 true;
},
else => false,
})) break :blk_0 true;
p.i = pos_0;
break :blk_0 false;
};
}