enum Index [src]

Fields

none = std.math.maxInt(u32)
_

Members

Source

pub const Index = enum(u32) { none = std.math.maxInt(u32), _, pub fn ptr(self: Index, builder: *Builder) *Alias { return &builder.aliases.items[@intFromEnum(self)]; } pub fn ptrConst(self: Index, builder: *const Builder) *const Alias { return &builder.aliases.items[@intFromEnum(self)]; } pub fn name(self: Index, builder: *const Builder) StrtabString { return self.ptrConst(builder).global.name(builder); } pub fn rename(self: Index, new_name: StrtabString, builder: *Builder) Allocator.Error!void { return self.ptrConst(builder).global.rename(new_name, builder); } pub fn typeOf(self: Index, builder: *const Builder) Type { return self.ptrConst(builder).global.typeOf(builder); } pub fn toConst(self: Index, builder: *const Builder) Constant { return self.ptrConst(builder).global.toConst(); } pub fn toValue(self: Index, builder: *const Builder) Value { return self.toConst(builder).toValue(); } pub fn getAliasee(self: Index, builder: *const Builder) Global.Index { const aliasee = self.ptrConst(builder).aliasee.getBase(builder); assert(aliasee != .none); return aliasee; } pub fn setAliasee(self: Index, aliasee: Constant, builder: *Builder) void { self.ptr(builder).aliasee = aliasee; } }