diff options
| author | Jimmi Holst Christensen <jimmiholstchristensen@gmail.com> | 2018-11-13 05:08:37 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-11-13 05:08:37 -0800 |
| commit | 8139c5a516eaa217ed76acdf09496895451c5c5c (patch) | |
| tree | 89841cec818c5650471c7f2c11141013f8640bf7 /std/spinlock.zig | |
| parent | 67fbb0434f7104801c66e821b5057a8323e377df (diff) | |
| download | zig-8139c5a516eaa217ed76acdf09496895451c5c5c.tar.gz zig-8139c5a516eaa217ed76acdf09496895451c5c5c.zip | |
New Zig formal grammar (#1685)
Reverted #1628 and changed the grammar+parser of the language to not allow certain expr where types are expected
Diffstat (limited to 'std/spinlock.zig')
| -rw-r--r-- | std/spinlock.zig | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/std/spinlock.zig b/std/spinlock.zig index a7f6561264..75fdf9f6e1 100644 --- a/std/spinlock.zig +++ b/std/spinlock.zig @@ -4,10 +4,10 @@ const AtomicOrder = builtin.AtomicOrder; const AtomicRmwOp = builtin.AtomicRmwOp; const assert = std.debug.assert; -pub const SpinLock = struct.{ +pub const SpinLock = struct { lock: u8, // TODO use a bool or enum - pub const Held = struct.{ + pub const Held = struct { spinlock: *SpinLock, pub fn release(self: Held) void { @@ -16,12 +16,12 @@ pub const SpinLock = struct.{ }; pub fn init() SpinLock { - return SpinLock.{ .lock = 0 }; + return SpinLock{ .lock = 0 }; } pub fn acquire(self: *SpinLock) Held { while (@atomicRmw(u8, &self.lock, builtin.AtomicRmwOp.Xchg, 1, AtomicOrder.SeqCst) != 0) {} - return Held.{ .spinlock = self }; + return Held{ .spinlock = self }; } }; |
