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)
{
return new NSNumber (value).NSDecimalValue;
using var number = new NSNumber (value);
return number.NSDecimalValue;
}
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)
{
return new NSNumber (value).NSDecimalValue;
using var number = new NSNumber (value);
return number.NSDecimalValue;
}
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)
{
return new NSNumber (value).NSDecimalValue;
using var number = new NSNumber (value);
return number.NSDecimalValue;
}
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)
{
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)
{
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)
@ -221,10 +229,7 @@ namespace Foundation {
public override bool Equals (object obj)
{
if (!(obj is NSDecimal))
return false;
return this == (NSDecimal) obj;
return obj is NSDecimal other && this == other;
}
public override int GetHashCode ()

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

@ -486,7 +486,8 @@ namespace Foundation {
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 {

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

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