01: /*
02: * All content copyright (c) 2003-2006 Terracotta, Inc., except as may otherwise be noted in a separate copyright notice. All rights reserved.
03: */
04:
05: /* Generated By:JJTree: Do not edit this line. ASTClassPattern.java */
06: package com.tc.aspectwerkz.expression.ast;
07:
08: import com.tc.aspectwerkz.expression.regexp.Pattern;
09: import com.tc.aspectwerkz.expression.regexp.TypePattern;
10: import com.tc.aspectwerkz.expression.SubtypePatternType;
11:
12: public class ASTClassPattern extends SimpleNode {
13: private TypePattern m_typePattern;
14:
15: public ASTClassPattern(int id) {
16: super (id);
17: }
18:
19: public ASTClassPattern(ExpressionParser p, int id) {
20: super (p, id);
21: }
22:
23: public Object jjtAccept(ExpressionParserVisitor visitor, Object data) {
24: return visitor.visit(this , data);
25: }
26:
27: public void setTypePattern(String pattern) {
28: if (pattern.endsWith("+")) {
29: pattern = pattern.substring(0, pattern.length() - 1);
30: m_typePattern = Pattern.compileTypePattern(pattern,
31: SubtypePatternType.MATCH_ON_ALL_METHODS);
32: } else if (pattern.endsWith("#")) {
33: pattern = pattern.substring(0, pattern.length() - 1);
34: m_typePattern = Pattern.compileTypePattern(pattern,
35: SubtypePatternType.MATCH_ON_BASE_TYPE_METHODS_ONLY);
36: } else {
37: m_typePattern = Pattern.compileTypePattern(pattern,
38: SubtypePatternType.NOT_HIERARCHICAL);
39: }
40: }
41:
42: public TypePattern getTypePattern() {
43: return m_typePattern;
44: }
45: }
|