1 package spoon.reflect; 2 3 import java.io.File ; 4 import java.lang.annotation.Annotation ; 5 6 import spoon.reflect.code.CtArrayAccess; 7 import spoon.reflect.code.CtAssert; 8 import spoon.reflect.code.CtAssignment; 9 import spoon.reflect.code.CtBinaryOperator; 10 import spoon.reflect.code.CtBlock; 11 import spoon.reflect.code.CtBreak; 12 import spoon.reflect.code.CtCase; 13 import spoon.reflect.code.CtCatch; 14 import spoon.reflect.code.CtConditional; 15 import spoon.reflect.code.CtContinue; 16 import spoon.reflect.code.CtDo; 17 import spoon.reflect.code.CtExpression; 18 import spoon.reflect.code.CtFieldAccess; 19 import spoon.reflect.code.CtFor; 20 import spoon.reflect.code.CtForEach; 21 import spoon.reflect.code.CtIf; 22 import spoon.reflect.code.CtInvocation; 23 import spoon.reflect.code.CtLiteral; 24 import spoon.reflect.code.CtLocalVariable; 25 import spoon.reflect.code.CtNewArray; 26 import spoon.reflect.code.CtNewClass; 27 import spoon.reflect.code.CtOperatorAssignment; 28 import spoon.reflect.code.CtReturn; 29 import spoon.reflect.code.CtStatementList; 30 import spoon.reflect.code.CtSwitch; 31 import spoon.reflect.code.CtSynchronized; 32 import spoon.reflect.code.CtThrow; 33 import spoon.reflect.code.CtTry; 34 import spoon.reflect.code.CtUnaryOperator; 35 import spoon.reflect.code.CtVariableAccess; 36 import spoon.reflect.code.CtWhile; 37 import spoon.reflect.declaration.CtAnnotation; 38 import spoon.reflect.declaration.CtAnnotationType; 39 import spoon.reflect.declaration.CtAnonymousExecutable; 40 import spoon.reflect.declaration.CtClass; 41 import spoon.reflect.declaration.CtConstructor; 42 import spoon.reflect.declaration.CtEnum; 43 import spoon.reflect.declaration.CtField; 44 import spoon.reflect.declaration.CtInterface; 45 import spoon.reflect.declaration.CtMethod; 46 import spoon.reflect.declaration.CtPackage; 47 import spoon.reflect.declaration.CtParameter; 48 import spoon.reflect.declaration.CtTypeParameter; 49 import spoon.reflect.declaration.SourcePosition; 50 import spoon.reflect.reference.CtArrayTypeReference; 51 import spoon.reflect.reference.CtExecutableReference; 52 import spoon.reflect.reference.CtFieldReference; 53 import spoon.reflect.reference.CtLocalVariableReference; 54 import spoon.reflect.reference.CtPackageReference; 55 import spoon.reflect.reference.CtParameterReference; 56 import spoon.reflect.reference.CtTypeParameterReference; 57 import spoon.reflect.reference.CtTypeReference; 58 59 68 public interface CoreFactory { 69 70 80 <T> T clone(T element); 81 82 85 <A extends Annotation > CtAnnotation<A> createAnnotation(); 86 87 90 <T extends Annotation > CtAnnotationType<T> createAnnotationType(); 91 92 95 CtAnonymousExecutable createAnonymousExecutable(); 96 97 100 <T, E extends CtExpression<?>> CtArrayAccess<T, E> createArrayAccess(); 101 102 105 <T> CtArrayTypeReference<T> createArrayTypeReference(); 106 107 110 CtAssert createAssert(); 111 112 115 <T, A extends T> CtAssignment<T, A> createAssignment(); 116 117 120 <T> CtBinaryOperator<T> createBinaryOperator(); 121 122 125 <R> CtBlock<R> createBlock(); 126 127 130 CtBreak createBreak(); 131 132 135 <S> CtCase<S> createCase(); 136 137 140 CtCatch createCatch(); 141 142 145 <T> CtClass<T> createClass(); 146 147 150 <T> CtConditional<T> createConditional(); 151 152 155 <T> CtConstructor<T> createConstructor(); 156 157 160 CtContinue createContinue(); 161 162 165 CtDo createDo(); 166 167 170 <T extends Enum > CtEnum<T> createEnum(); 171 172 175 <T> CtExecutableReference<T> createExecutableReference(); 176 177 180 <T> CtField<T> createField(); 181 182 185 <T> CtFieldAccess<T> createFieldAccess(); 186 187 190 <T> CtFieldReference<T> createFieldReference(); 191 192 195 CtFor createFor(); 196 197 200 CtForEach createForEach(); 201 202 205 CtIf createIf(); 206 207 210 <T> CtInterface<T> createInterface(); 211 212 215 <T> CtInvocation<T> createInvocation(); 216 217 220 <T> CtLiteral<T> createLiteral(); 221 222 225 <T> CtLocalVariable<T> createLocalVariable(); 226 227 230 <T> CtLocalVariableReference<T> createLocalVariableReference(); 231 232 235 <T> CtMethod<T> createMethod(); 236 237 240 <T> CtNewArray<T> createNewArray(); 241 242 245 <T> CtNewClass<T> createNewClass(); 246 247 250 <T, A extends T> CtOperatorAssignment<T, A> createOperatorAssignment(); 251 252 255 CtPackage createPackage(); 256 257 260 CtPackageReference createPackageReference(); 261 262 265 <T> CtParameter<T> createParameter(); 266 267 270 <T> CtParameterReference<T> createParameterReference(); 271 272 275 <R> CtReturn<R> createReturn(); 276 277 280 SourcePosition createSourcePosition(File sourceFileName, int start, 281 int end, int[] lineSeparatorPositions); 282 283 286 <R> CtStatementList<R> createStatementList(); 287 288 291 <S> CtSwitch<S> createSwitch(); 292 293 296 CtSynchronized createSynchronized(); 297 298 301 CtThrow createThrow(); 302 303 306 CtTry createTry(); 307 308 311 CtTypeParameter createTypeParameter(); 312 313 316 CtTypeParameterReference createTypeParameterReference(); 317 318 321 <T> CtTypeReference<T> createTypeReference(); 322 323 326 <T> CtUnaryOperator<T> createUnaryOperator(); 327 328 331 <T> CtVariableAccess<T> createVariableAccess(); 332 333 336 CtWhile createWhile(); 337 338 341 Factory getMainFactory(); 342 343 346 void setMainFactory(Factory mainFactory); 347 348 } 349 | Popular Tags |