public override bool Equals(object obj) { if (obj is FragmentSpread fragmentSpread) { return (FragmentName.Equals(fragmentSpread.FragmentName) && ( Directives == null && fragmentSpread.Directives == null || Directives != null && fragmentSpread.Directives != null && Directives.SequenceEqual(fragmentSpread.Directives) )); } return(base.Equals(obj)); }
public override bool Equals(object obj) { if (obj is FragmentDefinition fragmentDefinition) { return (FragmentName.Equals(fragmentDefinition.FragmentName) && TypeCondition.Equals(fragmentDefinition.TypeCondition) && ( Directives == null && fragmentDefinition.Directives == null || Directives != null && fragmentDefinition.Directives != null && Directives.SequenceEqual(fragmentDefinition.Directives) ) && SelectionSet.SequenceEqual(fragmentDefinition.SelectionSet)); } return(base.Equals(obj)); }
public bool Equals(ShaderSetCacheKey other) { return(VertexName.Equals(other.VertexName) && FragmentName.Equals(other.FragmentName) && Specializations.Span.SequenceEqual(other.Specializations.Span)); }