boolean () { boolean result; boolean computed = isFlagSet(READ_ONLY_COMPUTED_MASK); if (computed) { result = isFlagSet(CACHED_READ_ONLY_MASK); } else { result = isDataReadOnly(); setFlag(READ_ONLY_COMPUTED_MASK, true); setFlag(CACHED_READ_ONLY_MASK, result); } return result; }