/// <inheritdoc/> public override void Lock(bool recursive) { base.Lock(recursive); int currentFieldId = FieldInfo.MinFieldId; foreach (var field in fields) { field.FieldId = currentFieldId++; } isLeaf = GetIsLeaf(); key = GetKey(); if (IsEntity || IsStructure) { Accessors = new FieldAccessorProvider(this); } if (!recursive) { return; } validators = new ReadOnlyList <IObjectValidator>(validators.ToList()); affectedIndexes.Lock(true); indexes.Lock(true); columns.Lock(true); fieldMap.Lock(true); fields.Lock(true); }
static FieldMap() { Empty = new FieldMap(); Empty.Lock(); }