1 package eu.svjatoslav.inspector.java.methods;
3 import java.util.ArrayList;
6 import eu.svjatoslav.commons.string.tokenizer.InvalidSyntaxException;
7 import eu.svjatoslav.commons.string.tokenizer.Tokenizer;
9 public class ClassReference {
13 List<ClassReference> typeParameters = new ArrayList<ClassReference>();
15 public ClassReference(final Tokenizer tokenizer)
16 throws InvalidSyntaxException {
17 name = tokenizer.getNextToken().token;
19 if (!tokenizer.probeNextToken("<"))
23 final ClassReference parameterType = new ClassReference(tokenizer);
24 typeParameters.add(parameterType);
26 if (!tokenizer.probeNextToken(","))
30 tokenizer.expectNextToken(">");
34 public String toString() {
35 final EnumerationBuffer result = new EnumerationBuffer();
39 if (typeParameters.size() > 0) {
41 for (final ClassReference classReference : typeParameters)
42 result.appendEnumeration(classReference.toString());
46 return result.toString();