syndicate-js/examples/how-to-use-syndicatec-javas.../src/box.js

18 lines
477 B
JavaScript
Raw Normal View History

2021-12-01 16:24:29 +00:00
/// SPDX-License-Identifier: GPL-3.0-or-later
/// SPDX-FileCopyrightText: Copyright © 2016-2021 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
2021-01-18 22:11:53 +00:00
2021-01-19 14:13:42 +00:00
import { BoxState, SetBox, N } from './protocol.js';
2021-01-18 22:11:53 +00:00
export function boot(ds) {
2021-01-18 22:11:53 +00:00
spawn named 'box' {
2021-12-02 23:55:42 +00:00
field boxValue = 0;
at ds {
assert BoxState(boxValue.value);
on message SetBox($v) => boxValue.value = v;
}
stop on (boxValue.value === N) {
2021-01-18 22:11:53 +00:00
console.log('terminated box root facet');
2021-12-02 23:55:42 +00:00
}
2021-01-18 22:11:53 +00:00
}
}