1   package com.stateofflow.eclipse.metrics.type;
2   
3   import org.eclipse.jdt.core.dom.AnonymousClassDeclaration;
4   import org.eclipse.jdt.core.dom.ITypeBinding;
5   
6   public final class AnonymousClassDeclarationAdapter extends NonNullType {
7       public AnonymousClassDeclarationAdapter(final AnonymousClassDeclaration node) {
8           super(node);
9       }
10  
11      protected String getNamePart() {
12          return "(anonymous)";
13      }
14  
15      protected String getNameWithParentNamePrepended(final Type parent) {
16          return parent.getNameWithAnonymousChild(this);
17      }
18  
19      protected String getPrefix() {
20          return "$";
21      }
22  
23      public int getStartPosition() {
24          return getTypedNode().getStartPosition();
25      }
26  
27      private AnonymousClassDeclaration getTypedNode() {
28          return (AnonymousClassDeclaration) getNode();
29      }
30  
31      public ITypeBinding resolveBinding() {
32          return getTypedNode().resolveBinding();
33      }
34  }
35