aboutsummaryrefslogtreecommitdiff
path: root/std/spinlock.zig
diff options
context:
space:
mode:
authorJimmi Holst Christensen <jimmiholstchristensen@gmail.com>2018-10-15 09:51:15 -0400
committerGitHub <noreply@github.com>2018-10-15 09:51:15 -0400
commit378d3e44034e817093966ea42c2940d6a0482dd8 (patch)
treefe5f454097e1627b1afc65aebfb815dd70a7576d /std/spinlock.zig
parent822d4fa216ea8f598e4a9d53161800494f449a94 (diff)
downloadzig-378d3e44034e817093966ea42c2940d6a0482dd8.tar.gz
zig-378d3e44034e817093966ea42c2940d6a0482dd8.zip
Solve the return type ambiguity (#1628)
Changed container and initializer syntax * <container> { ... } -> <container> . { ... } * <exrp> { ... } -> <expr> . { ...}
Diffstat (limited to 'std/spinlock.zig')
-rw-r--r--std/spinlock.zig8
1 files changed, 4 insertions, 4 deletions
diff --git a/std/spinlock.zig b/std/spinlock.zig
index 75fdf9f6e1..a7f6561264 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 };
}
};