Warning: session_start(): open(/var/lib/php/sessions/sess_hr4jnun8q87mh174gp4t5uj8s7, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
// returns true if change
sbool _csetField(Concept c, S field, O value) ctex {
Field f = setOpt_findField(c.getClass(), field);
//print("cset: " + c.id + " " + field + " " + struct(value) + " " + f);
if (value instanceof RC) value = c._concepts.getConcept((RC) value);
value = deref(value);
if (value instanceof S && l((S) value) >= concepts_internStringsLongerThan) value = intern((S) value);
if (f == null) {
assertIdentifier(field);
O val2 = value instanceof Concept ? c.new Ref((Concept) value) : value;
O oldVal = mapGet(c.fieldValues, field);
if (oldVal instanceof Concept.Ref && val2 instanceof Concept.Ref)
((Concept.Ref) oldVal).set(((Concept.Ref) val2)!);
else if (val2 == null)
mapRemove(c.fieldValues, field);
else
c.fieldValues = syncMapPut2_createLinkedHashMap(c.fieldValues, field, val2);
c.change();
} else if (isSubtypeOf(f.getType(), Concept.Ref.class)) {
// Concept.Ref magic
((Concept.Ref) f.get(c)).set((Concept) derefRef(value));
c.change(); true;
} else if (isSubtypeOf(f.getType(), Concept.RefL.class)) {
// Concept.RefL magic
((Concept.RefL) f.get(c)).replaceWithList(lmap derefRef((L) value));
c.change(); true;
} else {
O old = f.get(c);
if (neq(value, old)) {
f.set(c, value);
if (!isTransient(f)) c.change();
true;
}
}
false;
}