1 /* 2 * Copyright (C) 2007-2010 Jlio Vilmar Gesser. 3 * Copyright (C) 2011, 2013-2016 The JavaParser Team. 4 * 5 * This file is part of JavaParser. 6 * 7 * JavaParser can be used either under the terms of 8 * a) the GNU Lesser General Public License as published by 9 * the Free Software Foundation, either version 3 of the License, or 10 * (at your option) any later version. 11 * b) the terms of the Apache License 12 * 13 * You should have received a copy of both licenses in LICENCE.LGPL and 14 * LICENCE.APACHE. Please refer to those files for details. 15 * 16 * JavaParser is distributed in the hope that it will be useful, 17 * but WITHOUT ANY WARRANTY; without even the implied warranty of 18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 * GNU Lesser General Public License for more details. 20 */ 21 package com.github.javaparser.ast.visitor; 22 23 import com.github.javaparser.ast.*; 24 import com.github.javaparser.ast.body.*; 25 import com.github.javaparser.ast.comments.BlockComment; 26 import com.github.javaparser.ast.comments.JavadocComment; 27 import com.github.javaparser.ast.comments.LineComment; 28 import com.github.javaparser.ast.expr.*; 29 import com.github.javaparser.ast.modules.*; 30 import com.github.javaparser.ast.stmt.*; 31 import com.github.javaparser.ast.type.*; 32 import javax.annotation.Generated; 33 34 /** 35 * A visitor that calculates deep node equality by comparing all properties and child nodes of the node. 36 * 37 * @author Julio Vilmar Gesser 38 */ 39 public class ObjectIdentityEqualsVisitor implements GenericVisitor<Boolean, Visitable> { 40 41 private static final ObjectIdentityEqualsVisitor SINGLETON = new ObjectIdentityEqualsVisitor(); 42 43 public static boolean equals(final Node n, final Node n2) { 44 return n.accept(SINGLETON, n2); 45 } 46 47 @Override 48 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 49 public Boolean visit(final CompilationUnit n, final Visitable arg) { 50 return n == arg; 51 } 52 53 @Override 54 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 55 public Boolean visit(final PackageDeclaration n, final Visitable arg) { 56 return n == arg; 57 } 58 59 @Override 60 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 61 public Boolean visit(final TypeParameter n, final Visitable arg) { 62 return n == arg; 63 } 64 65 @Override 66 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 67 public Boolean visit(final LineComment n, final Visitable arg) { 68 return n == arg; 69 } 70 71 @Override 72 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 73 public Boolean visit(final BlockComment n, final Visitable arg) { 74 return n == arg; 75 } 76 77 @Override 78 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 79 public Boolean visit(final ClassOrInterfaceDeclaration n, final Visitable arg) { 80 return n == arg; 81 } 82 83 @Override 84 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 85 public Boolean visit(final EnumDeclaration n, final Visitable arg) { 86 return n == arg; 87 } 88 89 @Override 90 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 91 public Boolean visit(final EnumConstantDeclaration n, final Visitable arg) { 92 return n == arg; 93 } 94 95 @Override 96 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 97 public Boolean visit(final AnnotationDeclaration n, final Visitable arg) { 98 return n == arg; 99 } 100 101 @Override 102 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 103 public Boolean visit(final AnnotationMemberDeclaration n, final Visitable arg) { 104 return n == arg; 105 } 106 107 @Override 108 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 109 public Boolean visit(final FieldDeclaration n, final Visitable arg) { 110 return n == arg; 111 } 112 113 @Override 114 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 115 public Boolean visit(final VariableDeclarator n, final Visitable arg) { 116 return n == arg; 117 } 118 119 @Override 120 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 121 public Boolean visit(final ConstructorDeclaration n, final Visitable arg) { 122 return n == arg; 123 } 124 125 @Override 126 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 127 public Boolean visit(final MethodDeclaration n, final Visitable arg) { 128 return n == arg; 129 } 130 131 @Override 132 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 133 public Boolean visit(final Parameter n, final Visitable arg) { 134 return n == arg; 135 } 136 137 @Override 138 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 139 public Boolean visit(final InitializerDeclaration n, final Visitable arg) { 140 return n == arg; 141 } 142 143 @Override 144 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 145 public Boolean visit(final JavadocComment n, final Visitable arg) { 146 return n == arg; 147 } 148 149 @Override 150 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 151 public Boolean visit(final ClassOrInterfaceType n, final Visitable arg) { 152 return n == arg; 153 } 154 155 @Override 156 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 157 public Boolean visit(final PrimitiveType n, final Visitable arg) { 158 return n == arg; 159 } 160 161 @Override 162 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 163 public Boolean visit(final ArrayType n, final Visitable arg) { 164 return n == arg; 165 } 166 167 @Override 168 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 169 public Boolean visit(final ArrayCreationLevel n, final Visitable arg) { 170 return n == arg; 171 } 172 173 @Override 174 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 175 public Boolean visit(final IntersectionType n, final Visitable arg) { 176 return n == arg; 177 } 178 179 @Override 180 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 181 public Boolean visit(final UnionType n, final Visitable arg) { 182 return n == arg; 183 } 184 185 @Override 186 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 187 public Boolean visit(final VoidType n, final Visitable arg) { 188 return n == arg; 189 } 190 191 @Override 192 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 193 public Boolean visit(final WildcardType n, final Visitable arg) { 194 return n == arg; 195 } 196 197 @Override 198 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 199 public Boolean visit(final UnknownType n, final Visitable arg) { 200 return n == arg; 201 } 202 203 @Override 204 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 205 public Boolean visit(final ArrayAccessExpr n, final Visitable arg) { 206 return n == arg; 207 } 208 209 @Override 210 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 211 public Boolean visit(final ArrayCreationExpr n, final Visitable arg) { 212 return n == arg; 213 } 214 215 @Override 216 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 217 public Boolean visit(final ArrayInitializerExpr n, final Visitable arg) { 218 return n == arg; 219 } 220 221 @Override 222 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 223 public Boolean visit(final AssignExpr n, final Visitable arg) { 224 return n == arg; 225 } 226 227 @Override 228 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 229 public Boolean visit(final BinaryExpr n, final Visitable arg) { 230 return n == arg; 231 } 232 233 @Override 234 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 235 public Boolean visit(final CastExpr n, final Visitable arg) { 236 return n == arg; 237 } 238 239 @Override 240 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 241 public Boolean visit(final ClassExpr n, final Visitable arg) { 242 return n == arg; 243 } 244 245 @Override 246 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 247 public Boolean visit(final ConditionalExpr n, final Visitable arg) { 248 return n == arg; 249 } 250 251 @Override 252 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 253 public Boolean visit(final EnclosedExpr n, final Visitable arg) { 254 return n == arg; 255 } 256 257 @Override 258 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 259 public Boolean visit(final FieldAccessExpr n, final Visitable arg) { 260 return n == arg; 261 } 262 263 @Override 264 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 265 public Boolean visit(final InstanceOfExpr n, final Visitable arg) { 266 return n == arg; 267 } 268 269 @Override 270 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 271 public Boolean visit(final StringLiteralExpr n, final Visitable arg) { 272 return n == arg; 273 } 274 275 @Override 276 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 277 public Boolean visit(final IntegerLiteralExpr n, final Visitable arg) { 278 return n == arg; 279 } 280 281 @Override 282 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 283 public Boolean visit(final LongLiteralExpr n, final Visitable arg) { 284 return n == arg; 285 } 286 287 @Override 288 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 289 public Boolean visit(final CharLiteralExpr n, final Visitable arg) { 290 return n == arg; 291 } 292 293 @Override 294 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 295 public Boolean visit(final DoubleLiteralExpr n, final Visitable arg) { 296 return n == arg; 297 } 298 299 @Override 300 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 301 public Boolean visit(final BooleanLiteralExpr n, final Visitable arg) { 302 return n == arg; 303 } 304 305 @Override 306 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 307 public Boolean visit(final NullLiteralExpr n, final Visitable arg) { 308 return n == arg; 309 } 310 311 @Override 312 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 313 public Boolean visit(final MethodCallExpr n, final Visitable arg) { 314 return n == arg; 315 } 316 317 @Override 318 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 319 public Boolean visit(final NameExpr n, final Visitable arg) { 320 return n == arg; 321 } 322 323 @Override 324 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 325 public Boolean visit(final ObjectCreationExpr n, final Visitable arg) { 326 return n == arg; 327 } 328 329 @Override 330 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 331 public Boolean visit(final Name n, final Visitable arg) { 332 return n == arg; 333 } 334 335 @Override 336 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 337 public Boolean visit(final SimpleName n, final Visitable arg) { 338 return n == arg; 339 } 340 341 @Override 342 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 343 public Boolean visit(final ThisExpr n, final Visitable arg) { 344 return n == arg; 345 } 346 347 @Override 348 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 349 public Boolean visit(final SuperExpr n, final Visitable arg) { 350 return n == arg; 351 } 352 353 @Override 354 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 355 public Boolean visit(final UnaryExpr n, final Visitable arg) { 356 return n == arg; 357 } 358 359 @Override 360 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 361 public Boolean visit(final VariableDeclarationExpr n, final Visitable arg) { 362 return n == arg; 363 } 364 365 @Override 366 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 367 public Boolean visit(final MarkerAnnotationExpr n, final Visitable arg) { 368 return n == arg; 369 } 370 371 @Override 372 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 373 public Boolean visit(final SingleMemberAnnotationExpr n, final Visitable arg) { 374 return n == arg; 375 } 376 377 @Override 378 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 379 public Boolean visit(final NormalAnnotationExpr n, final Visitable arg) { 380 return n == arg; 381 } 382 383 @Override 384 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 385 public Boolean visit(final MemberValuePair n, final Visitable arg) { 386 return n == arg; 387 } 388 389 @Override 390 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 391 public Boolean visit(final ExplicitConstructorInvocationStmt n, final Visitable arg) { 392 return n == arg; 393 } 394 395 @Override 396 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 397 public Boolean visit(final LocalClassDeclarationStmt n, final Visitable arg) { 398 return n == arg; 399 } 400 401 @Override 402 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 403 public Boolean visit(final AssertStmt n, final Visitable arg) { 404 return n == arg; 405 } 406 407 @Override 408 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 409 public Boolean visit(final BlockStmt n, final Visitable arg) { 410 return n == arg; 411 } 412 413 @Override 414 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 415 public Boolean visit(final LabeledStmt n, final Visitable arg) { 416 return n == arg; 417 } 418 419 @Override 420 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 421 public Boolean visit(final EmptyStmt n, final Visitable arg) { 422 return n == arg; 423 } 424 425 @Override 426 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 427 public Boolean visit(final ExpressionStmt n, final Visitable arg) { 428 return n == arg; 429 } 430 431 @Override 432 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 433 public Boolean visit(final SwitchStmt n, final Visitable arg) { 434 return n == arg; 435 } 436 437 @Override 438 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 439 public Boolean visit(final SwitchEntryStmt n, final Visitable arg) { 440 return n == arg; 441 } 442 443 @Override 444 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 445 public Boolean visit(final BreakStmt n, final Visitable arg) { 446 return n == arg; 447 } 448 449 @Override 450 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 451 public Boolean visit(final ReturnStmt n, final Visitable arg) { 452 return n == arg; 453 } 454 455 @Override 456 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 457 public Boolean visit(final IfStmt n, final Visitable arg) { 458 return n == arg; 459 } 460 461 @Override 462 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 463 public Boolean visit(final WhileStmt n, final Visitable arg) { 464 return n == arg; 465 } 466 467 @Override 468 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 469 public Boolean visit(final ContinueStmt n, final Visitable arg) { 470 return n == arg; 471 } 472 473 @Override 474 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 475 public Boolean visit(final DoStmt n, final Visitable arg) { 476 return n == arg; 477 } 478 479 @Override 480 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 481 public Boolean visit(final ForeachStmt n, final Visitable arg) { 482 return n == arg; 483 } 484 485 @Override 486 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 487 public Boolean visit(final ForStmt n, final Visitable arg) { 488 return n == arg; 489 } 490 491 @Override 492 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 493 public Boolean visit(final ThrowStmt n, final Visitable arg) { 494 return n == arg; 495 } 496 497 @Override 498 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 499 public Boolean visit(final SynchronizedStmt n, final Visitable arg) { 500 return n == arg; 501 } 502 503 @Override 504 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 505 public Boolean visit(final TryStmt n, final Visitable arg) { 506 return n == arg; 507 } 508 509 @Override 510 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 511 public Boolean visit(final CatchClause n, final Visitable arg) { 512 return n == arg; 513 } 514 515 @Override 516 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 517 public Boolean visit(final LambdaExpr n, final Visitable arg) { 518 return n == arg; 519 } 520 521 @Override 522 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 523 public Boolean visit(final MethodReferenceExpr n, final Visitable arg) { 524 return n == arg; 525 } 526 527 @Override 528 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 529 public Boolean visit(final TypeExpr n, final Visitable arg) { 530 return n == arg; 531 } 532 533 @Override 534 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 535 public Boolean visit(final ImportDeclaration n, final Visitable arg) { 536 return n == arg; 537 } 538 539 @Override 540 public Boolean visit(NodeList n, Visitable arg) { 541 return n == arg; 542 } 543 544 @Override 545 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 546 public Boolean visit(final ModuleDeclaration n, final Visitable arg) { 547 return n == arg; 548 } 549 550 @Override 551 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 552 public Boolean visit(final ModuleRequiresStmt n, final Visitable arg) { 553 return n == arg; 554 } 555 556 @Override() 557 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 558 public Boolean visit(final ModuleExportsStmt n, final Visitable arg) { 559 return n == arg; 560 } 561 562 @Override() 563 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 564 public Boolean visit(final ModuleProvidesStmt n, final Visitable arg) { 565 return n == arg; 566 } 567 568 @Override() 569 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 570 public Boolean visit(final ModuleUsesStmt n, final Visitable arg) { 571 return n == arg; 572 } 573 574 @Override 575 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 576 public Boolean visit(final ModuleOpensStmt n, final Visitable arg) { 577 return n == arg; 578 } 579 580 @Override 581 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 582 public Boolean visit(final UnparsableStmt n, final Visitable arg) { 583 return n == arg; 584 } 585 586 @Override 587 @Generated("com.github.javaparser.generator.core.visitor.ObjectIdentityEqualsVisitorGenerator") 588 public Boolean visit(final ReceiverParameter n, final Visitable arg) { 589 return n == arg; 590 } 591 592 @Override 593 public Boolean visit(final VarType n, final Visitable arg) { 594 return n == arg; 595 } 596 } 597