| 1 package org.aspectj.apache.bcel.verifier.statics; 2 3 56 57 import org.aspectj.apache.bcel.classfile.*; 58 import org.aspectj.apache.bcel.classfile.Deprecated; 59 import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleAnnotations; 60 import org.aspectj.apache.bcel.classfile.annotation.RuntimeInvisibleParameterAnnotations; 61 import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleAnnotations; 62 import org.aspectj.apache.bcel.classfile.annotation.RuntimeVisibleParameterAnnotations; 63 64 79 public class StringRepresentation extends 80 org.apache.bcel.classfile.EmptyVisitor implements Visitor 81 { 82 86 private String tostring; 87 88 92 101 public StringRepresentation(final Node n) { 102 n.accept(this); } 106 107 112 public String toString() { 113 if (tostring == null) { 121 tostring = ""; } 125 return tostring; 126 } 127 128 136 private String toString(final Node obj) { 137 String ret; 138 try { 139 ret = obj.toString(); 140 } catch (RuntimeException e) { 141 String s = obj.getClass().getName(); 142 s = s.substring(s.lastIndexOf(".") + 1); 143 ret = "<<" + s + ">>"; 144 } catch (ClassFormatError e) { 151 String s = obj.getClass().getName(); 152 s = s.substring(s.lastIndexOf(".") + 1); 153 ret = "<<" + s + ">>"; 154 } 155 return ret; 156 } 157 158 public void visitCode(final Code obj) { 165 tostring = "<CODE>"; } 168 169 public void visitCodeException(final CodeException obj) { 170 tostring = toString(obj); 171 } 172 173 public void visitConstantClass(final ConstantClass obj) { 174 tostring = toString(obj); 175 } 176 177 public void visitConstantDouble(final ConstantDouble obj) { 178 tostring = toString(obj); 179 } 180 181 public void visitConstantFieldref(final ConstantFieldref obj) { 182 tostring = toString(obj); 183 } 184 185 public void visitConstantFloat(final ConstantFloat obj) { 186 tostring = toString(obj); 187 } 188 189 public void visitConstantInteger(final ConstantInteger obj) { 190 tostring = toString(obj); 191 } 192 193 public void visitConstantInterfaceMethodref( 194 final ConstantInterfaceMethodref obj) 195 { 196 tostring = toString(obj); 197 } 198 199 public void visitConstantLong(final ConstantLong obj) { 200 tostring = toString(obj); 201 } 202 203 public void visitConstantMethodref(final ConstantMethodref obj) { 204 tostring = toString(obj); 205 } 206 207 public void visitConstantNameAndType(final ConstantNameAndType obj) { 208 tostring = toString(obj); 209 } 210 211 public void visitConstantPool(final ConstantPool obj) { 212 tostring = toString(obj); 213 } 214 215 public void visitConstantString(final ConstantString obj) { 216 tostring = toString(obj); 217 } 218 219 public void visitConstantUtf8(final ConstantUtf8 obj) { 220 tostring = toString(obj); 221 } 222 223 public void visitConstantValue(final ConstantValue obj) { 224 tostring = toString(obj); 225 } 226 227 public void visitDeprecated(final Deprecated obj) { 228 tostring = toString(obj); 229 } 230 231 public void visitExceptionTable(final ExceptionTable obj) { 232 tostring = toString(obj); 233 } 234 235 public void visitField(final Field obj) { 236 tostring = toString(obj); 237 } 238 239 public void visitInnerClass(final InnerClass obj) { 240 tostring = toString(obj); 241 } 242 243 public void visitInnerClasses(final InnerClasses obj) { 244 tostring = toString(obj); 245 } 246 247 public void visitJavaClass(final JavaClass obj) { 248 tostring = toString(obj); 249 } 250 251 public void visitLineNumber(final LineNumber obj) { 252 tostring = toString(obj); 253 } 254 255 public void visitLineNumberTable(final LineNumberTable obj) { 256 tostring = "<LineNumberTable: " + toString(obj) + ">"; 257 } 258 259 public void visitLocalVariable(final LocalVariable obj) { 260 tostring = toString(obj); 261 } 262 263 public void visitLocalVariableTable(final LocalVariableTable obj) { 264 tostring = "<LocalVariableTable: " + toString(obj) + ">"; 265 } 266 267 public void visitMethod(final Method obj) { 268 tostring = toString(obj); 269 } 270 271 public void visitSignature(final Signature obj) { 272 tostring = toString(obj); 273 } 274 275 public void visitSourceFile(final SourceFile obj) { 276 tostring = toString(obj); 277 } 278 279 public void visitStackMap(final StackMap obj) { 280 tostring = toString(obj); 281 } 282 283 public void visitSynthetic(final Synthetic obj) { 284 tostring = toString(obj); 285 } 286 287 public void visitUnknown(final Unknown obj) { 288 tostring = toString(obj); 289 } 290 291 public void visitStackMapEntry(final StackMapEntry arg0) { 292 tostring = ""; 293 } 294 295 public void visitEnclosingMethod(final EnclosingMethod arg0) { 296 tostring = ""; 297 } 298 299 public void visitRuntimeVisibleAnnotations( 300 final RuntimeVisibleAnnotations arg0) 301 { 302 tostring = ""; 303 } 304 305 public void visitRuntimeInvisibleAnnotations( 306 final RuntimeInvisibleAnnotations arg0) 307 { 308 tostring = ""; 309 } 310 311 public void visitRuntimeVisibleParameterAnnotations( 312 final RuntimeVisibleParameterAnnotations arg0) 313 { 314 tostring = ""; 315 } 316 317 public void visitRuntimeInvisibleParameterAnnotations( 318 final RuntimeInvisibleParameterAnnotations arg0) 319 { 320 tostring = ""; 321 } 322 323 public void visitAnnotationDefault(final AnnotationDefault arg0) { 324 tostring = ""; 325 } 326 327 public void visitLocalVariableTypeTable(final LocalVariableTypeTable arg0) { 328 tostring = ""; 329 } 330 } 331 | Popular Tags |