Browse Source

Add traverse methods for declare and pattern types

Relates to #215.

Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
tags/V1_9_20
Alexander Kriegisch 1 year ago
parent
commit
6585b9ef46

+ 9
- 0
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/DeclareAnnotation.java View File

return visitor.visit(this, data); return visitor.visit(this, data);
} }


public Object traverse(PatternNodeVisitor visitor, Object data) {
Object ret = accept(visitor, data);
if (this.signaturePattern != null && this.signaturePattern instanceof SignaturePattern)
((SignaturePattern) this.signaturePattern).traverse(visitor, ret);
if (this.typePattern != null)
this.typePattern.traverse(visitor, ret);
return ret;
}

@Override @Override
public void resolve(IScope scope) { public void resolve(IScope scope) {
if (!scope.getWorld().isInJava5Mode()) { if (!scope.getWorld().isInJava5Mode()) {

+ 7
- 0
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/DeclareErrorOrWarning.java View File

return visitor.visit(this, data); return visitor.visit(this, data);
} }


public Object traverse(PatternNodeVisitor visitor, Object data) {
Object ret = accept(visitor, data);
if (this.pointcut != null)
this.pointcut.traverse(visitor, ret);
return ret;
}

public void write(CompressingDataOutputStream s) throws IOException { public void write(CompressingDataOutputStream s) throws IOException {
s.writeByte(Declare.ERROR_OR_WARNING); s.writeByte(Declare.ERROR_OR_WARNING);
s.writeBoolean(isError); s.writeBoolean(isError);

+ 9
- 0
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/DeclareParents.java View File

return visitor.visit(this, data); return visitor.visit(this, data);
} }


public Object traverse(PatternNodeVisitor visitor, Object data) {
Object ret = accept(visitor, data);
if (this.child != null)
this.child.traverse(visitor, ret);
if (this.parents != null)
this.parents.traverse(visitor, ret);
return ret;
}

@Override @Override
public Declare parameterizeWith(Map<String,UnresolvedType> typeVariableBindingMap, World w) { public Declare parameterizeWith(Map<String,UnresolvedType> typeVariableBindingMap, World w) {
DeclareParents ret = new DeclareParents(child.parameterizeWith(typeVariableBindingMap, w), parents.parameterizeWith( DeclareParents ret = new DeclareParents(child.parameterizeWith(typeVariableBindingMap, w), parents.parameterizeWith(

+ 7
- 0
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/DeclarePrecedence.java View File

return visitor.visit(this, data); return visitor.visit(this, data);
} }


public Object traverse(PatternNodeVisitor visitor, Object data) {
Object ret = accept(visitor, data);
if (this.patterns != null)
this.patterns.traverse(visitor, ret);
return ret;
}

public Declare parameterizeWith(Map typeVariableBindingMap, World w) { public Declare parameterizeWith(Map typeVariableBindingMap, World w) {
DeclarePrecedence ret = new DeclarePrecedence(this.patterns.parameterizeWith(typeVariableBindingMap, w)); DeclarePrecedence ret = new DeclarePrecedence(this.patterns.parameterizeWith(typeVariableBindingMap, w));
ret.copyLocationFrom(this); ret.copyLocationFrom(this);

+ 9
- 0
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/DeclareSoft.java View File

return visitor.visit(this, data); return visitor.visit(this, data);
} }


public Object traverse(PatternNodeVisitor visitor, Object data) {
Object ret = accept(visitor, data);
if (this.exception != null)
this.exception.traverse(visitor, ret);
if (this.pointcut != null)
this.pointcut.traverse(visitor, ret);
return ret;
}

@Override @Override
public Declare parameterizeWith(Map typeVariableBindingMap, World w) { public Declare parameterizeWith(Map typeVariableBindingMap, World w) {
DeclareSoft ret = new DeclareSoft(exception.parameterizeWith(typeVariableBindingMap, w), pointcut.parameterizeWith( DeclareSoft ret = new DeclareSoft(exception.parameterizeWith(typeVariableBindingMap, w), pointcut.parameterizeWith(

+ 7
- 0
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/DeclareTypeErrorOrWarning.java View File

return visitor.visit(this, data); return visitor.visit(this, data);
} }


public Object traverse(PatternNodeVisitor visitor, Object data) {
Object ret = accept(visitor, data);
if (this.typePattern != null)
this.typePattern.traverse(visitor, ret);
return ret;
}

public void write(CompressingDataOutputStream s) throws IOException { public void write(CompressingDataOutputStream s) throws IOException {
s.writeByte(Declare.TYPE_ERROR_OR_WARNING); s.writeByte(Declare.TYPE_ERROR_OR_WARNING);
s.writeBoolean(isError); s.writeBoolean(isError);

+ 6
- 0
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/HasMemberTypePattern.java View File

return visitor.visit(this, data); return visitor.visit(this, data);
} }


public Object traverse(PatternNodeVisitor visitor, Object data) {
Object ret = accept(visitor, data);
if (this.signaturePattern != null)
this.signaturePattern.traverse(visitor, ret);
return ret;
}
} }

+ 17
- 0
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/SignaturePattern.java View File

return visitor.visit(this, data); return visitor.visit(this, data);
} }


public Object traverse(PatternNodeVisitor visitor, Object data) {
Object ret = accept(visitor, data);
if (this.annotationPattern != null)
this.annotationPattern.traverse(visitor, ret);
if (this.returnType != null)
this.returnType.traverse(visitor, ret);
if (this.declaringType != null)
this.declaringType.traverse(visitor, ret);
if (this.name != null)
this.name.traverse(visitor, ret);
if (this.parameterTypes != null)
this.parameterTypes.traverse(visitor, ret);
if (this.throwsPattern != null)
this.throwsPattern.traverse(visitor, ret);
return ret;
}

public boolean isExactDeclaringTypePattern() { public boolean isExactDeclaringTypePattern() {
return isExactDeclaringTypePattern; return isExactDeclaringTypePattern;
} }

+ 4
- 2
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/TypePatternList.java View File

@Override @Override
public Object traverse(PatternNodeVisitor visitor, Object data) { public Object traverse(PatternNodeVisitor visitor, Object data) {
Object ret = accept(visitor, data); Object ret = accept(visitor, data);
for (TypePattern typePattern : typePatterns) {
typePattern.traverse(visitor, ret);
if (typePatterns != null) {
for (TypePattern typePattern : typePatterns) {
typePattern.traverse(visitor, ret);
}
} }
return ret; return ret;
} }

+ 4
- 2
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/TypeVariablePatternList.java View File



public Object traverse(PatternNodeVisitor visitor, Object data) { public Object traverse(PatternNodeVisitor visitor, Object data) {
Object ret = accept(visitor, data); Object ret = accept(visitor, data);
for (TypeVariablePattern pattern : patterns) {
pattern.traverse(visitor, ret);
if (patterns != null) {
for (TypeVariablePattern pattern : patterns) {
pattern.traverse(visitor, ret);
}
} }
return ret; return ret;
} }

+ 7
- 0
org.aspectj.matcher/src/main/java/org/aspectj/weaver/patterns/WildAnnotationTypePattern.java View File

public Object accept(PatternNodeVisitor visitor, Object data) { public Object accept(PatternNodeVisitor visitor, Object data) {
return visitor.visit(this, data); return visitor.visit(this, data);
} }

public Object traverse(PatternNodeVisitor visitor, Object data) {
Object ret = accept(visitor, data);
if (this.typePattern != null)
this.typePattern.traverse(visitor, ret);
return ret;
}
} }

Loading…
Cancel
Save