当前位置: 首页>>代码示例>>Java>>正文


Java Initializer类代码示例

本文整理汇总了Java中org.eclipse.jdt.internal.compiler.ast.Initializer的典型用法代码示例。如果您正苦于以下问题:Java Initializer类的具体用法?Java Initializer怎么用?Java Initializer使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


Initializer类属于org.eclipse.jdt.internal.compiler.ast包,在下文中一共展示了Initializer类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: buildTree

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
/** {@inheritDoc} */
@Override protected EclipseNode buildTree(ASTNode node, Kind kind) {
	switch (kind) {
	case COMPILATION_UNIT:
		return buildCompilationUnit((CompilationUnitDeclaration) node);
	case TYPE:
		return buildType((TypeDeclaration) node);
	case FIELD:
		return buildField((FieldDeclaration) node);
	case INITIALIZER:
		return buildInitializer((Initializer) node);
	case METHOD:
		return buildMethod((AbstractMethodDeclaration) node);
	case ARGUMENT:
		return buildLocal((Argument) node, kind);
	case LOCAL:
		return buildLocal((LocalDeclaration) node, kind);
	case STATEMENT:
		return buildStatement((Statement) node);
	case ANNOTATION:
		return buildAnnotation((Annotation) node, false);
	default:
		throw new AssertionError("Did not expect to arrive here: " + kind);
	}
}
 
开发者ID:git03394538,项目名称:lombok-ianchiu,代码行数:26,代码来源:EclipseAST.java

示例2: getEnclosingDeclaration

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
private ASTNode getEnclosingDeclaration() {
	int i = this.parentsPtr;
	while (i > -1) {
		ASTNode parent = this.parents[i];
		if (parent instanceof AbstractMethodDeclaration) {
			return parent;
		} else if (parent instanceof Initializer) {
			return parent;
		} else if (parent instanceof FieldDeclaration) {
			return parent;
		} else if (parent instanceof TypeDeclaration) {
			return parent;
		}
		i--;
	}
	return null;
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:18,代码来源:UnresolvedReferenceNameFinder.java

示例3: add

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
public RecoveredElement add(LocalDeclaration localDeclaration, int bracketBalanceValue) {

	/* do not consider a type starting passed the type end (if set)
		it must be belonging to an enclosing type */
	if (this.fieldDeclaration.declarationSourceEnd != 0
			&& localDeclaration.declarationSourceStart > this.fieldDeclaration.declarationSourceEnd){
		resetPendingModifiers();
		if (this.parent == null) return this; // ignore
		return this.parent.add(localDeclaration, bracketBalanceValue);
	}
	/* method body should have been created */
	Block block = new Block(0);
	block.sourceStart = ((Initializer)this.fieldDeclaration).sourceStart;
	RecoveredElement element = this.add(block, 1);
	if (this.initializerBody != null) {
		this.initializerBody.attachPendingModifiers(
				this.pendingAnnotations,
				this.pendingAnnotationCount,
				this.pendingModifiers,
				this.pendingModifersSourceStart);
	}
	resetPendingModifiers();
	return element.add(localDeclaration, bracketBalanceValue);
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:25,代码来源:RecoveredInitializer.java

示例4: updatedFieldDeclaration

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
public FieldDeclaration updatedFieldDeclaration(int depth, Set knownTypes){

	if (this.initializerBody != null){
		Block block = this.initializerBody.updatedBlock(depth, knownTypes);
		if (block != null){
			Initializer initializer = (Initializer) this.fieldDeclaration;
			initializer.block = block;

			if (initializer.declarationSourceEnd == 0) {
				initializer.declarationSourceEnd = block.sourceEnd;
				initializer.bodyEnd = block.sourceEnd;
			}
		}
		if (this.localTypeCount > 0) this.fieldDeclaration.bits |= ASTNode.HasLocalType;

	}
	if (this.fieldDeclaration.sourceEnd == 0){
		this.fieldDeclaration.sourceEnd = this.fieldDeclaration.declarationSourceEnd;
	}
	return this.fieldDeclaration;
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:22,代码来源:RecoveredInitializer.java

示例5: updateSourceEndIfNecessary

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
public void updateSourceEndIfNecessary(int braceStart, int braceEnd){
	if (this.fieldDeclaration.declarationSourceEnd == 0) {
		Initializer initializer = (Initializer)this.fieldDeclaration;
		if(parser().rBraceSuccessorStart >= braceEnd) {
			if (initializer.bodyStart < parser().rBraceEnd) {
				initializer.declarationSourceEnd = parser().rBraceEnd;
			} else {
				initializer.declarationSourceEnd = initializer.bodyStart;
			}
			if (initializer.bodyStart < parser().rBraceStart) {
				initializer.bodyEnd = parser().rBraceStart;
			} else {
				initializer.bodyEnd = initializer.bodyStart;
			}
		} else {
			initializer.declarationSourceEnd = braceEnd;
			initializer.bodyEnd  = braceStart - 1;
		}
		if(initializer.block != null) {
			initializer.block.sourceEnd = initializer.declarationSourceEnd;
		}
	}
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:24,代码来源:RecoveredInitializer.java

示例6: consumeClassBodyDeclaration

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
protected void consumeClassBodyDeclaration() {
	// ClassBodyDeclaration ::= Diet NestedMethod CreateInitializer Block
	//push an Initializer
	//optimize the push/pop
	this.nestedMethod[this.nestedType]--;
	Block block = (Block) this.astStack[this.astPtr--];
	this.astLengthPtr--;
	if (this.diet) block.bits &= ~ASTNode.UndocumentedEmptyBlock; // clear bit since was diet
	Initializer initializer = (Initializer) this.astStack[this.astPtr];
	initializer.declarationSourceStart = initializer.sourceStart = block.sourceStart;
	initializer.block = block;
	this.intPtr--; // pop sourcestart left on the stack by consumeNestedMethod.
	initializer.bodyStart = this.intStack[this.intPtr--];
	this.realBlockPtr--; // pop the block variable counter left on the stack by consumeNestedMethod
	int javadocCommentStart = this.intStack[this.intPtr--];
	if (javadocCommentStart != -1) {
		initializer.declarationSourceStart = javadocCommentStart;
		initializer.javadoc = this.javadoc;
		this.javadoc = null;
	}
	initializer.bodyEnd = this.endPosition;
	initializer.sourceEnd = this.endStatementPosition;
	initializer.declarationSourceEnd = flushCommentsDefinedPriorTo(this.endStatementPosition);
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:25,代码来源:Parser.java

示例7: consumeStaticInitializer

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
protected void consumeStaticInitializer() {
	// StaticInitializer ::=  StaticOnly Block
	//push an Initializer
	//optimize the push/pop
	Block block = (Block) this.astStack[this.astPtr];
	if (this.diet) block.bits &= ~ASTNode.UndocumentedEmptyBlock; // clear bit set since was diet
	Initializer initializer = new Initializer(block, ClassFileConstants.AccStatic);
	this.astStack[this.astPtr] = initializer;
	initializer.sourceEnd = this.endStatementPosition;
	initializer.declarationSourceEnd = flushCommentsDefinedPriorTo(this.endStatementPosition);
	this.nestedMethod[this.nestedType] --;
	initializer.declarationSourceStart = this.intStack[this.intPtr--];
	initializer.bodyStart = this.intStack[this.intPtr--];
	initializer.bodyEnd = this.endPosition;
	// doc comment
	initializer.javadoc = this.javadoc;
	this.javadoc = null;

	// recovery
	if (this.currentElement != null){
		this.lastCheckPoint = initializer.declarationSourceEnd;
		this.currentElement = this.currentElement.add(initializer, 0);
		this.lastIgnoredToken = -1;
	}
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:26,代码来源:Parser.java

示例8: createField

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
private void createField(FieldDeclaration x) {
  if (x instanceof Initializer) {
    return;
  }
  SourceInfo info = makeSourceInfo(x);
  FieldBinding binding = x.binding;
  JType type = typeMap.get(binding.type);
  JDeclaredType enclosingType = (JDeclaredType) typeMap.get(binding.declaringClass);

  JField field;
  if (x.initialization != null && x.initialization instanceof AllocationExpression
      && ((AllocationExpression) x.initialization).enumConstant != null) {
    field =
        new JEnumField(info, intern(binding.name), binding.original().id,
            (JEnumType) enclosingType, (JClassType) type);
  } else {
    field =
        new JField(info, intern(binding.name), enclosingType, type, binding.isStatic(),
            getFieldDisposition(binding));
  }
  enclosingType.addField(field);
  typeMap.setField(binding, field);
}
 
开发者ID:WeTheInternet,项目名称:xapi,代码行数:24,代码来源:GwtAstBuilder.java

示例9: visitInitializer

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
public void visitInitializer(EclipseNode node, Initializer initializer) {
	Block block = initializer.block;
	boolean s = (block != null && block.statements != null);
	print("<%s INITIALIZER: %s%s%s>",
			(initializer.modifiers & Modifier.STATIC) != 0 ? "static" : "instance",
					s ? "filled" : "blank",
					isGenerated(initializer) ? " (GENERATED)" : "", position(node));
	indent++;
	if (printContent) {
		if (initializer.block != null) print("%s", initializer.block);
		disablePrinting++;
	}
}
 
开发者ID:git03394538,项目名称:lombok-ianchiu,代码行数:14,代码来源:EclipseASTVisitor.java

示例10: buildField

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
private EclipseNode buildField(FieldDeclaration field) {
	if (field instanceof Initializer) return buildInitializer((Initializer)field);
	if (setAndGetAsHandled(field)) return null;
	List<EclipseNode> childNodes = new ArrayList<EclipseNode>();
	addIfNotNull(childNodes, buildStatement(field.initialization));
	childNodes.addAll(buildAnnotations(field.annotations, true));
	return putInMap(new EclipseNode(this, field, childNodes, Kind.FIELD));
}
 
开发者ID:git03394538,项目名称:lombok-ianchiu,代码行数:9,代码来源:EclipseAST.java

示例11: fixPositions

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
private void fixPositions(Initializer node) {
	node.sourceEnd = sourceEnd;
	node.sourceStart = sourceStart;
	node.declarationEnd = sourceEnd;
	node.declarationSourceEnd = sourceEnd;
	node.declarationSourceStart = sourceStart;
	node.modifiersSourceStart = sourceStart;
	node.endPart1Position = sourceEnd;
	node.endPart2Position = sourceEnd;
	node.bodyStart = sourceStart;
	node.bodyEnd = sourceEnd;
}
 
开发者ID:git03394538,项目名称:lombok-ianchiu,代码行数:13,代码来源:SetGeneratedByVisitor.java

示例12: convert

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
private Initializer convert(
    InitializerElementInfo initializerInfo, CompilationResult compilationResult)
    throws JavaModelException {

  Block block = new Block(0);
  Initializer initializer = new Initializer(block, ClassFileConstants.AccDefault);

  int start = initializerInfo.getDeclarationSourceStart();
  int end = initializerInfo.getDeclarationSourceEnd();

  initializer.sourceStart = initializer.declarationSourceStart = start;
  initializer.sourceEnd = initializer.declarationSourceEnd = end;
  initializer.modifiers = initializerInfo.getModifiers();

  /* convert local and anonymous types */
  IJavaElement[] children = initializerInfo.getChildren();
  int typesLength = children.length;
  if (typesLength > 0) {
    Statement[] statements = new Statement[typesLength];
    for (int i = 0; i < typesLength; i++) {
      SourceType type = (SourceType) children[i];
      TypeDeclaration localType = convert(type, compilationResult);
      if ((localType.bits & ASTNode.IsAnonymousType) != 0) {
        QualifiedAllocationExpression expression = new QualifiedAllocationExpression(localType);
        expression.type = localType.superclass;
        localType.superclass = null;
        localType.superInterfaces = null;
        localType.allocation = expression;
        statements[i] = expression;
      } else {
        statements[i] = localType;
      }
    }
    block.statements = statements;
  }

  return initializer;
}
 
开发者ID:eclipse,项目名称:che,代码行数:39,代码来源:SourceTypeConverter.java

示例13: find

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
public void find(
		char[] startWith,
		Initializer initializer,
		ClassScope scope,
		int from,
		char[][] discouragedNames,
		UnresolvedReferenceNameRequestor nameRequestor) {
	MethodDeclaration fakeMethod =
		this.findAfter(startWith, scope, from, initializer.bodyEnd, MAX_LINE_COUNT, false, discouragedNames, nameRequestor);
	if (fakeMethod != null) fakeMethod.traverse(this, scope);
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:12,代码来源:UnresolvedReferenceNameFinder.java

示例14: visit

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
/**
 * @see org.eclipse.jdt.internal.compiler.ASTVisitor#visit(org.eclipse.jdt.internal.compiler.ast.Initializer, org.eclipse.jdt.internal.compiler.lookup.MethodScope)
 */
public boolean visit(Initializer initializer, MethodScope scope) {

	if (initializer.isStatic()) {
		this.scribe.printNextToken(TerminalTokens.TokenNamestatic);
	}
	initializer.block.traverse(this, scope);
	return false;
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:12,代码来源:CodeFormatterVisitor.java

示例15: convert

import org.eclipse.jdt.internal.compiler.ast.Initializer; //导入依赖的package包/类
private Initializer convert(InitializerElementInfo initializerInfo, CompilationResult compilationResult) throws JavaModelException {

		Block block = new Block(0);
		Initializer initializer = new Initializer(block, ClassFileConstants.AccDefault);

		int start = initializerInfo.getDeclarationSourceStart();
		int end = initializerInfo.getDeclarationSourceEnd();

		initializer.sourceStart = initializer.declarationSourceStart = start;
		initializer.sourceEnd = initializer.declarationSourceEnd = end;
		initializer.modifiers = initializerInfo.getModifiers();

		/* convert local and anonymous types */
		IJavaElement[] children = initializerInfo.getChildren();
		int typesLength = children.length;
		if (typesLength > 0) {
			Statement[] statements = new Statement[typesLength];
			for (int i = 0; i < typesLength; i++) {
				SourceType type = (SourceType) children[i];
				TypeDeclaration localType = convert(type, compilationResult);
				if ((localType.bits & ASTNode.IsAnonymousType) != 0) {
					QualifiedAllocationExpression expression = new QualifiedAllocationExpression(localType);
					expression.type = localType.superclass;
					localType.superclass = null;
					localType.superInterfaces = null;
					localType.allocation = expression;
					statements[i] = expression;
				} else {
					statements[i] = localType;
				}
			}
			block.statements = statements;
		}

		return initializer;
	}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:37,代码来源:SourceTypeConverter.java


注:本文中的org.eclipse.jdt.internal.compiler.ast.Initializer类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。