public IsValidValidationContext(IModelScheme modelScheme, ReferenceLoopProtectionSettings referenceLoopProtectionSettings) { _modelScheme = modelScheme; ReferenceLoopProtectionSettings = referenceLoopProtectionSettings; if (!(referenceLoopProtectionSettings is null)) { _referencesLoopProtectionEnabled = true; _referencesStack = new ReferencesStack(); if (_modelScheme.RootModelType.IsClass && !(referenceLoopProtectionSettings.RootModelReference is null)) { _ = _referencesStack.TryPush(_modelScheme.RootSpecificationScopeId, string.Empty, referenceLoopProtectionSettings.RootModelReference, out _); } } }
public ValidationContext(IModelScheme modelScheme, bool failFast, ReferenceLoopProtectionSettings referenceLoopProtectionSettings) { _modelScheme = modelScheme; FailFast = failFast; ReferenceLoopProtectionSettings = referenceLoopProtectionSettings; if (!(referenceLoopProtectionSettings is null)) { _referencesLoopProtectionEnabled = true; _referencesStack = new ReferencesStack(); if (_modelScheme.RootModelType.IsClass && !(referenceLoopProtectionSettings.RootModelReference is null)) { _referencesStack.TryPush(_modelScheme.RootSpecificationScopeId, GetCurrentPath(), referenceLoopProtectionSettings.RootModelReference, out _); } } }