File tree Expand file tree Collapse file tree 5 files changed +27
-9
lines changed
src/main/java/org/javawebstack/abstractdata Expand file tree Collapse file tree 5 files changed +27
-9
lines changed Original file line number Diff line number Diff line change @@ -343,7 +343,7 @@ public AbstractElement clone() {
343343 return new AbstractArrayCollector <>(e -> e );
344344 }
345345
346- public boolean equals (Object obj ) {
346+ public boolean equals (Object obj , boolean strict ) {
347347 if (obj == null )
348348 return false ;
349349 if (!(obj instanceof AbstractArray ))
@@ -353,13 +353,17 @@ public boolean equals(Object obj) {
353353 return false ;
354354
355355 for (int i = 0 ; i < size (); i ++) {
356- if (!(get (i ).equals (arr .get (i ))))
356+ if (!(get (i ).equals (arr .get (i ), strict )))
357357 return false ;
358358 }
359359
360360 return true ;
361361 }
362362
363+ public boolean equals (Object obj ) {
364+ return equals (obj , false );
365+ }
366+
363367 public AbstractArray addAll (AbstractArray array ) {
364368 elements .addAll (array .elements );
365369 return this ;
Original file line number Diff line number Diff line change @@ -245,4 +245,6 @@ public boolean isPrimitive() {
245245 return this == NUMBER || this == BOOLEAN || this == STRING ;
246246 }
247247 }
248+
249+ boolean equals (Object obj , boolean strict );
248250}
Original file line number Diff line number Diff line change @@ -56,7 +56,11 @@ public Type getType() {
5656 return Type .NULL ;
5757 }
5858
59- public boolean equals (Object obj ) {
59+ public boolean equals (Object obj , boolean strict ) {
6060 return obj == null || obj instanceof AbstractNull ;
6161 }
62+
63+ public boolean equals (Object obj ) {
64+ return equals (obj , false );
65+ }
6266}
Original file line number Diff line number Diff line change @@ -267,7 +267,7 @@ public AbstractElement clone() {
267267 return new AbstractObjectCollector <>(keyFunction , valueFunction );
268268 }
269269
270- public boolean equals (Object obj ) {
270+ public boolean equals (Object obj , boolean strict ) {
271271 if (obj == null )
272272 return false ;
273273 if (!(obj instanceof AbstractObject ))
@@ -279,10 +279,14 @@ public boolean equals(Object obj) {
279279 for (String key : keys ()) {
280280 if (!object .has (key ))
281281 return false ;
282- if (!object .get (key ).equals (get (key )))
282+ if (!object .get (key ).equals (get (key ), strict ))
283283 return false ;
284284 }
285285
286286 return true ;
287287 }
288+
289+ public boolean equals (Object obj ) {
290+ return equals (obj , false );
291+ }
288292}
Original file line number Diff line number Diff line change @@ -175,20 +175,24 @@ public AbstractElement clone() {
175175 return from (value );
176176 }
177177
178- public boolean equals (Object obj ) {
178+ public boolean equals (Object obj , boolean strict ) {
179179 if (obj == null )
180180 return false ;
181181 if (!(obj instanceof AbstractPrimitive ))
182182 return false ;
183183
184184 AbstractPrimitive primitive = (AbstractPrimitive ) obj ;
185185 if (isBoolean () && primitive .isBoolean ())
186- return bool ().equals (primitive .bool ());
186+ return bool (strict ).equals (primitive .bool (strict ));
187187 if (isNumber () && primitive .isNumber ())
188- return number ().equals (primitive .number ());
188+ return number (strict ).equals (primitive .number (strict ));
189189 if (isString () && primitive .isString ())
190- return string ().equals (primitive .string ());
190+ return string (strict ).equals (primitive .string (strict ));
191191
192192 return false ;
193193 }
194+
195+ public boolean equals (Object obj ) {
196+ return equals (obj , false );
197+ }
194198}
You can’t perform that action at this time.
0 commit comments