extractMaster method
Waypath
extractMaster()
Implementation
Waypath extractMaster() {
if (_master != null) {
print("Master already extracted");
return _master!;
}
if (_closedOuters.isNotEmpty) {
_master = _closedOuters.reduce((a, b) => a.length > b.length ? a : b);
assert(_master!.length >= 2);
_closedOuters.remove(_master);
return _master!;
}
_master = _openOuters.reduce((a, b) => a.length > b.length ? a : b);
assert(_master!.length >= 2);
_openOuters.remove(_master);
return _master!;
}