// Equal compares two rings. Returns true if lengths are the same
// and all points are Equal.
543083
func (r Ring) Equal(ring Ring) bool {
	return MultiPoint(r).Equal(MultiPoint(ring))
}
730711
func (p *Point) Equal(p2 Point) bool {
	return FloatEqual(p.X, p2.X) && FloatEqual(p.Y, p2.Y)
}
581352
func (e *endpointsInfo) Equal(other proxy.Endpoint) bool {
	o, ok := other.(*endpointsInfo)
	if !ok {
		klog.Error("Failed to cast endpointsInfo")
		return false
	}
	return e.Endpoint == o.Endpoint &&
		e.IsLocal == o.IsLocal &&
		e.protocol == o.protocol &&
		e.chainName == o.chainName
}
689046
func (p Space) Equal(u convert.Equaler) bool {
	other, ok := u.(Space)
	if !ok {
		return false
	}
	if !p.Lifecycle.Equal(other.Lifecycle) {
		return false
	}
	if p.ID != other.ID {
		return false
	}
	if p.Version != other.Version {
		return false
	}
	if p.Name != other.Name {
		return false
	}
	if !uuid.Equal(p.SpaceTemplateID, other.SpaceTemplateID) {
		return false
	}
	if p.Description != other.Description {
		return false
	}
	if !uuid.Equal(p.OwnerID, other.OwnerID) {
		return false
	}
	return true
}
993700
func (c *Cluster) Equal(other *Cluster) bool {
	return reflect.DeepEqual(c, other)
}
1187760
func (o *MaxValuesPerFacetOption) Equal(o2 *MaxValuesPerFacetOption) bool {
	if o2 == nil {
		return o.value == 100
	}
	return o.value == o2.value
}
1345990
func Equal(p1, p2 Implementation) bool {
	return bytes.Equal(p1.Bytes(), p2.Bytes())
}
97001
func (o *HighlightPostTagOption) Equal(o2 *HighlightPostTagOption) bool {
	if o2 == nil {
		return o.value == "</em>"
	}
	return o.value == o2.value
}
370739
func (node ColIdent) Equal(in ColIdent) bool {
	return node.Lowered() == in.Lowered()
}
493369
func (m Metric) Equal(o Metric) bool {
	return LabelSet(m).Equal(LabelSet(o))
}
232028
func (self StringEqualer) Equal(e Equaler) bool {
	return self.S == e.(StringEqualer).S
}
281942
func (mp MultiPolygon) Equal(multiPolygon MultiPolygon) bool {
	if len(mp) != len(multiPolygon) {
		return false
	}

	for i, p := range mp {
		if !p.Equal(multiPolygon[i]) {
			return false
		}
	}

	return true
}
1208115
func (s *SyncedSet) Equal(other *SyncedSet) bool {
	s.RLock()
	defer s.RUnlock()
	test := reflect.DeepEqual(s.set, other.set)
	return test
}
124188
func (o *LengthOption) Equal(o2 *LengthOption) bool {
	if o2 == nil {
		return o.value == 0
	}
	return o.value == o2.value
}
1281072
func (a Array) Equal(another Array) bool {
	if another == nil {
		return false
	}
	if len(a) != len(another) {
		return false
	}
	for i, v1 := range a {
		v2 := another[i]
		if !Equal(v1, v2) {
			return false
		}
	}
	return true
}
608214
func (vs *ValueMap) Equal(other *ValueMap) bool {
	if vs == nil {
		return other == nil || other.Len() == 0
	}
	if other == nil {
		return vs == nil || vs.Len() == 0
	}
	return vs.hashMap.Equal(other.hashMap)
}
663906
func (s String) Equal(other Argument) bool {
	if other.Typetag() != TypetagString {
		return false
	}
	s2 := other.(String)
	return s == s2
}