Wrap some objects in using statements (#7560)

* Wrap some objects in using statements

* Switch to using statement.
This commit is contained in:
Marius Ungureanu 2019-12-18 18:28:23 +02:00 коммит произвёл Manuel de la Pena
Родитель 8c589c0093
Коммит 7b1049cf24
3 изменённых файлов: 21 добавлений и 15 удалений

Просмотреть файл

@ -176,42 +176,50 @@ namespace Foundation {
public static implicit operator NSDecimal (int value) public static implicit operator NSDecimal (int value)
{ {
return new NSNumber (value).NSDecimalValue; using var number = new NSNumber (value);
return number.NSDecimalValue;
} }
public static explicit operator int (NSDecimal value) public static explicit operator int (NSDecimal value)
{ {
return new NSDecimalNumber (value).Int32Value; using var number = new NSDecimalNumber (value);
return number.Int32Value;
} }
public static implicit operator NSDecimal (float value) public static implicit operator NSDecimal (float value)
{ {
return new NSNumber (value).NSDecimalValue; using var number = new NSNumber (value);
return number.NSDecimalValue;
} }
public static explicit operator float (NSDecimal value) public static explicit operator float (NSDecimal value)
{ {
return new NSDecimalNumber (value).FloatValue; using var number = new NSDecimalNumber (value);
return number.FloatValue;
} }
public static implicit operator NSDecimal (double value) public static implicit operator NSDecimal (double value)
{ {
return new NSNumber (value).NSDecimalValue; using var number = new NSNumber (value);
return number.NSDecimalValue;
} }
public static explicit operator double (NSDecimal value) public static explicit operator double (NSDecimal value)
{ {
return new NSDecimalNumber (value).DoubleValue; using var number = new NSDecimalNumber (value);
return number.DoubleValue;
} }
public static implicit operator NSDecimal (decimal value) public static implicit operator NSDecimal (decimal value)
{ {
return new NSDecimalNumber (value.ToString (CultureInfo.InvariantCulture)).NSDecimalValue; using var number = new NSDecimalNumber (value.ToString (CultureInfo.InvariantCulture));
return number.NSDecimalValue;
} }
public static explicit operator decimal (NSDecimal value) public static explicit operator decimal (NSDecimal value)
{ {
return Decimal.Parse (new NSDecimalNumber (value).ToString (), CultureInfo.InvariantCulture); using var number = new NSDecimalNumber (value);
return Decimal.Parse (number.ToString (), CultureInfo.InvariantCulture);
} }
public bool Equals (NSDecimal other) public bool Equals (NSDecimal other)
@ -221,10 +229,7 @@ namespace Foundation {
public override bool Equals (object obj) public override bool Equals (object obj)
{ {
if (!(obj is NSDecimal)) return obj is NSDecimal other && this == other;
return false;
return this == (NSDecimal) obj;
} }
public override int GetHashCode () public override int GetHashCode ()

Просмотреть файл

@ -486,7 +486,8 @@ namespace Foundation {
public NSUrl[] GetMountedVolumes (NSString [] properties, NSVolumeEnumerationOptions options) public NSUrl[] GetMountedVolumes (NSString [] properties, NSVolumeEnumerationOptions options)
{ {
return GetMountedVolumes (NSArray.FromNSObjects (properties), options); using var array = NSArray.FromNSObjects (properties);
return GetMountedVolumes (array, options);
} }
public string CurrentDirectory { public string CurrentDirectory {

Просмотреть файл

@ -147,7 +147,7 @@ namespace Security {
if (max == 1) if (max == 1)
return new NSData [] { new NSData (ptr, false) }; return new NSData [] { new NSData (ptr, false) };
var array = new NSArray (ptr); using var array = new NSArray (ptr);
var records = new NSData [array.Count]; var records = new NSData [array.Count];
for (uint i = 0; i < records.Length; i++) for (uint i = 0; i < records.Length; i++)
records [i] = new NSData (array.ValueAt (i), false); records [i] = new NSData (array.ValueAt (i), false);
@ -200,7 +200,7 @@ namespace Security {
result = SecItem.SecItemCopyMatching (copy.Handle, out ptr); result = SecItem.SecItemCopyMatching (copy.Handle, out ptr);
n = null; n = null;
if (result == SecStatusCode.Success){ if (result == SecStatusCode.Success){
var array = new NSArray (ptr); using var array = new NSArray (ptr);
var records = new SecRecord [array.Count]; var records = new SecRecord [array.Count];
for (uint i = 0; i < records.Length; i++) for (uint i = 0; i < records.Length; i++)
records [i] = new SecRecord (new NSMutableDictionary (array.ValueAt (i), false)); records [i] = new SecRecord (new NSMutableDictionary (array.ValueAt (i), false));