Browse Source

Fix nullability of Equals methods.

pull/5326/head
Steven Kirk 6 years ago
parent
commit
6b0f3a26eb
  1. 10
      src/Markup/Avalonia.Markup/Markup/Parsers/PropertyPathGrammar.cs
  2. 20
      src/Markup/Avalonia.Markup/Markup/Parsers/SelectorGrammar.cs

10
src/Markup/Avalonia.Markup/Markup/Parsers/PropertyPathGrammar.cs

@ -188,7 +188,7 @@ namespace Avalonia.Markup.Parsers
{ {
public string Name { get; set; } = string.Empty; public string Name { get; set; } = string.Empty;
public override bool Equals(object obj) public override bool Equals(object? obj)
=> obj is PropertySyntax other => obj is PropertySyntax other
&& other.Name == Name; && other.Name == Name;
} }
@ -199,7 +199,7 @@ namespace Avalonia.Markup.Parsers
public string TypeName { get; set; } = string.Empty; public string TypeName { get; set; } = string.Empty;
public string? TypeNamespace { get; set; } public string? TypeNamespace { get; set; }
public override bool Equals(object obj) public override bool Equals(object? obj)
=> obj is TypeQualifiedPropertySyntax other => obj is TypeQualifiedPropertySyntax other
&& other.Name == Name && other.Name == Name
&& other.TypeName == TypeName && other.TypeName == TypeName
@ -209,14 +209,14 @@ namespace Avalonia.Markup.Parsers
public class ChildTraversalSyntax : ISyntax public class ChildTraversalSyntax : ISyntax
{ {
public static ChildTraversalSyntax Instance { get; } = new ChildTraversalSyntax(); public static ChildTraversalSyntax Instance { get; } = new ChildTraversalSyntax();
public override bool Equals(object obj) => obj is ChildTraversalSyntax; public override bool Equals(object? obj) => obj is ChildTraversalSyntax;
} }
public class EnsureTypeSyntax : ISyntax public class EnsureTypeSyntax : ISyntax
{ {
public string TypeName { get; set; } = string.Empty; public string TypeName { get; set; } = string.Empty;
public string? TypeNamespace { get; set; } public string? TypeNamespace { get; set; }
public override bool Equals(object obj) public override bool Equals(object? obj)
=> obj is EnsureTypeSyntax other => obj is EnsureTypeSyntax other
&& other.TypeName == TypeName && other.TypeName == TypeName
&& other.TypeNamespace == TypeNamespace; && other.TypeNamespace == TypeNamespace;
@ -226,7 +226,7 @@ namespace Avalonia.Markup.Parsers
{ {
public string TypeName { get; set; } = string.Empty; public string TypeName { get; set; } = string.Empty;
public string? TypeNamespace { get; set; } public string? TypeNamespace { get; set; }
public override bool Equals(object obj) public override bool Equals(object? obj)
=> obj is CastTypeSyntax other => obj is CastTypeSyntax other
&& other.TypeName == TypeName && other.TypeName == TypeName
&& other.TypeNamespace == TypeNamespace; && other.TypeNamespace == TypeNamespace;

20
src/Markup/Avalonia.Markup/Markup/Parsers/SelectorGrammar.cs

@ -331,7 +331,7 @@ namespace Avalonia.Markup.Parsers
public string Xmlns { get; set; } = string.Empty; public string Xmlns { get; set; } = string.Empty;
public override bool Equals(object obj) public override bool Equals(object? obj)
{ {
var other = obj as OfTypeSyntax; var other = obj as OfTypeSyntax;
return other != null && other.TypeName == TypeName && other.Xmlns == Xmlns; return other != null && other.TypeName == TypeName && other.Xmlns == Xmlns;
@ -344,7 +344,7 @@ namespace Avalonia.Markup.Parsers
public string Xmlns { get; set; } = string.Empty; public string Xmlns { get; set; } = string.Empty;
public override bool Equals(object obj) public override bool Equals(object? obj)
{ {
var other = obj as IsSyntax; var other = obj as IsSyntax;
return other != null && other.TypeName == TypeName && other.Xmlns == Xmlns; return other != null && other.TypeName == TypeName && other.Xmlns == Xmlns;
@ -355,7 +355,7 @@ namespace Avalonia.Markup.Parsers
{ {
public string Class { get; set; } = string.Empty; public string Class { get; set; } = string.Empty;
public override bool Equals(object obj) public override bool Equals(object? obj)
{ {
return obj is ClassSyntax && ((ClassSyntax)obj).Class == Class; return obj is ClassSyntax && ((ClassSyntax)obj).Class == Class;
} }
@ -365,7 +365,7 @@ namespace Avalonia.Markup.Parsers
{ {
public string Name { get; set; } = string.Empty; public string Name { get; set; } = string.Empty;
public override bool Equals(object obj) public override bool Equals(object? obj)
{ {
return obj is NameSyntax && ((NameSyntax)obj).Name == Name; return obj is NameSyntax && ((NameSyntax)obj).Name == Name;
} }
@ -377,7 +377,7 @@ namespace Avalonia.Markup.Parsers
public string Value { get; set; } = string.Empty; public string Value { get; set; } = string.Empty;
public override bool Equals(object obj) public override bool Equals(object? obj)
{ {
return obj is PropertySyntax && return obj is PropertySyntax &&
((PropertySyntax)obj).Property == Property && ((PropertySyntax)obj).Property == Property &&
@ -387,7 +387,7 @@ namespace Avalonia.Markup.Parsers
public class ChildSyntax : ISyntax public class ChildSyntax : ISyntax
{ {
public override bool Equals(object obj) public override bool Equals(object? obj)
{ {
return obj is ChildSyntax; return obj is ChildSyntax;
} }
@ -395,7 +395,7 @@ namespace Avalonia.Markup.Parsers
public class DescendantSyntax : ISyntax public class DescendantSyntax : ISyntax
{ {
public override bool Equals(object obj) public override bool Equals(object? obj)
{ {
return obj is DescendantSyntax; return obj is DescendantSyntax;
} }
@ -403,7 +403,7 @@ namespace Avalonia.Markup.Parsers
public class TemplateSyntax : ISyntax public class TemplateSyntax : ISyntax
{ {
public override bool Equals(object obj) public override bool Equals(object? obj)
{ {
return obj is TemplateSyntax; return obj is TemplateSyntax;
} }
@ -413,7 +413,7 @@ namespace Avalonia.Markup.Parsers
{ {
public IEnumerable<ISyntax> Argument { get; set; } = Enumerable.Empty<ISyntax>(); public IEnumerable<ISyntax> Argument { get; set; } = Enumerable.Empty<ISyntax>();
public override bool Equals(object obj) public override bool Equals(object? obj)
{ {
return (obj is NotSyntax not) && Argument.SequenceEqual(not.Argument); return (obj is NotSyntax not) && Argument.SequenceEqual(not.Argument);
} }
@ -421,7 +421,7 @@ namespace Avalonia.Markup.Parsers
public class CommaSyntax : ISyntax public class CommaSyntax : ISyntax
{ {
public override bool Equals(object obj) public override bool Equals(object? obj)
{ {
return obj is CommaSyntax or; return obj is CommaSyntax or;
} }

Loading…
Cancel
Save