Skip to content

Package: ConstructorReferenceState

ConstructorReferenceState

Coverage

1: package de.fhdw.wtf.common.ast;
2:
3: import de.fhdw.wtf.common.ast.visitor.ConstructorReferenceStateVisitor;
4: import de.fhdw.wtf.common.ast.visitor.ConstructorReferenceStateVisitorException;
5: import de.fhdw.wtf.common.ast.visitor.ConstructorReferenceStateVisitorReturn;
6: import de.fhdw.wtf.common.ast.visitor.ConstructorReferenceStateVisitorReturnException;
7:
8: /**
9: * This interface represents an abstract state of {@link ConstructorReference}.
10: */
11: public interface ConstructorReferenceState {
12:         
13:         /**
14:          * Accept-Method from Visitor-Pattern.
15:          *
16:          * @param v
17:          * visitor
18:          */
19:         void accept(ConstructorReferenceStateVisitor v);
20:         
21:         /**
22:          * Accept-Method from Visitor-Pattern.
23:          *
24:          * @param <X>
25:          * Returntype
26:          * @param v
27:          * visitor
28:          * @return X
29:          */
30:         <X> X accept(ConstructorReferenceStateVisitorReturn<X> v);
31:         
32:         /**
33:          * Accept-Method from Visitor-Pattern.
34:          *
35:          * @param <Y>
36:          * ExceptionType
37:          * @param v
38:          * visitor
39:          * @throws Y
40:          * Exception
41:          *
42:          */
43:         <Y extends Exception> void accept(ConstructorReferenceStateVisitorException<Y> v) throws Y;
44:         
45:         /**
46:          * Accept-Method from Visitor-Pattern.
47:          *
48:          * @param <X>
49:          * Returntype
50:          * @param <Y>
51:          * ExceptionType
52:          * @param v
53:          * visitor
54:          * @return X
55:          * @throws Y
56:          * Exception
57:          */
58:         <X, Y extends Exception> X accept(ConstructorReferenceStateVisitorReturnException<X, Y> v) throws Y;
59:         
60:         @Override
61:         boolean equals(Object obj);
62: }