private Schema CreateSchema(Type type, Queue <Type> referencedTypes) { // if (type.IsFSharpOption()) // type = type.GetGenericArguments()[0]; JsonContract jsonContract = this._jsonContractResolver.ResolveContract(type); if ((this._options.CustomTypeMappings.ContainsKey(type) || !(type != typeof(object)) ? 0 : (jsonContract is JsonObjectContract || jsonContract.IsSelfReferencingArrayOrDictionary() ? 1 : (!type.GetTypeInfo().IsEnum ? 0 : (this._options.UseReferencedDefinitionsForEnums ? 1 : 0)))) == 0) { return(this.CreateInlineSchema(type, referencedTypes)); } return(this.CreateReferenceSchema(type, referencedTypes)); }