* | Condition | *Content | *
---|---|---|
(a) | *no count | *{@linkplain Board#isEnabled() disabled} | *
(b) | *no anchor | *nodes are {@linkplain CountJS#baseCandidates() base candidates} | *
(c) | *anchor pending * but named in candidate's {@linkplain CountNodeJS#voters() voters} | *nodes are candidate's voters | *
(d) | *anchor pending but name matches root candidate | *nodes are base candidates | *
(e) | *anchor pending | *disabled | *
(f) | *anchor is root candidate | *nodes are base candidates | *
(g) | *no candidate | *nodes are base candidates, * anchor is {@linkplain Board#mosquito() mosquito} orphan | *
(h) | *candidate pending | *disabled | *
(i) | *default | *nodes are candidate's voters | *
The {@linkplain #anchor() anchor} (if any) is always included, either as a * {@linkplain PeerBoard#node(int) dart-sectored node}, or as a {@linkplain * PeerBoard#mosquito() mosquito}.
*/ public PeerBoard peers() { return peers; } private final PeerBoard peers = new PeerBoard( VoteTrack.this ); private void syncPeers() { /* a */if( count == null ) { peers.disable(); return; } final String anchorName = anchorName( Stage.i() ); if( anchorName == null ) { /* b */ peers.enable( null, count.baseCandidates(), /*isEndBoard*/true ); } else if( anchor == null ) // pending { JsArray