// Note: The maps are nested like with ThreadLocal (lookup thread first, then variable.) sclass FiberLocal implements IVar { // internal Map flv() { ret currentFiber().fiberLocalValues; } bool isSet() { ret flv().containsKey(this); } public A get() { ret (A) flv().get(this); } public void set(A a) { mapPutOrRemove(flv(), this, a); } }