本文整理汇总了Java中org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration类的典型用法代码示例。如果您正苦于以下问题:Java AnnotationMethodDeclaration类的具体用法?Java AnnotationMethodDeclaration怎么用?Java AnnotationMethodDeclaration使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
AnnotationMethodDeclaration类属于org.eclipse.jdt.internal.compiler.ast包,在下文中一共展示了AnnotationMethodDeclaration类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: generateAnnotationDefaultAttribute
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
private int generateAnnotationDefaultAttribute(AnnotationMethodDeclaration declaration, int attributeOffset) {
int attributesNumber = 0;
// add an annotation default attribute
int annotationDefaultNameIndex =
this.constantPool.literalIndex(AttributeNamesConstants.AnnotationDefaultName);
if (this.contentsOffset + 6 >= this.contents.length) {
resizeContents(6);
}
this.contents[this.contentsOffset++] = (byte) (annotationDefaultNameIndex >> 8);
this.contents[this.contentsOffset++] = (byte) annotationDefaultNameIndex;
int attributeLengthOffset = this.contentsOffset;
this.contentsOffset += 4;
generateElementValue(declaration.defaultValue, declaration.binding.returnType, attributeOffset);
if (this.contentsOffset != attributeOffset) {
int attributeLength = this.contentsOffset - attributeLengthOffset - 4;
this.contents[attributeLengthOffset++] = (byte) (attributeLength >> 24);
this.contents[attributeLengthOffset++] = (byte) (attributeLength >> 16);
this.contents[attributeLengthOffset++] = (byte) (attributeLength >> 8);
this.contents[attributeLengthOffset++] = (byte) attributeLength;
attributesNumber++;
}
return attributesNumber;
}
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:24,代码来源:ClassFile.java
示例2: consumeMethodHeaderDefaultValue
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
protected void consumeMethodHeaderDefaultValue() {
// MethodHeaderDefaultValue ::= DefaultValue
MethodDeclaration md = (MethodDeclaration) this.astStack[this.astPtr];
int length = this.expressionLengthStack[this.expressionLengthPtr--];
if (length == 1) {
this.intPtr--; // we get rid of the position of the default keyword
this.intPtr--; // we get rid of the position of the default keyword
if(md.isAnnotationMethod()) {
((AnnotationMethodDeclaration)md).defaultValue = this.expressionStack[this.expressionPtr];
md.modifiers |= ClassFileConstants.AccAnnotationDefault;
}
this.expressionPtr--;
this.recordStringLiterals = true;
}
if(this.currentElement != null) {
if(md.isAnnotationMethod()) {
this.currentElement.updateSourceEndIfNecessary(((AnnotationMethodDeclaration)md).defaultValue.sourceEnd);
}
}
}
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:24,代码来源:Parser.java
示例3: consumeMethodHeaderExtendedDims
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
protected void consumeMethodHeaderExtendedDims() {
// MethodHeaderExtendedDims ::= Dimsopt
// now we update the returnType of the method
MethodDeclaration md = (MethodDeclaration) this.astStack[this.astPtr];
int extendedDimensions = this.intStack[this.intPtr--];
if(md.isAnnotationMethod()) {
((AnnotationMethodDeclaration)md).extendedDimensions = extendedDimensions;
}
if (extendedDimensions != 0) {
md.sourceEnd = this.endPosition;
md.returnType = augmentTypeWithAdditionalDimensions(md.returnType, extendedDimensions, getAnnotationsOnDimensions(extendedDimensions), false);
md.bits |= (md.returnType.bits & ASTNode.HasTypeAnnotations);
if (this.currentToken == TokenNameLBRACE){
md.bodyStart = this.endPosition + 1;
}
// recovery
if (this.currentElement != null){
this.lastCheckPoint = md.bodyStart;
}
}
}
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:22,代码来源:Parser.java
示例4: generateMethodInfoAttributes
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
public int generateMethodInfoAttributes(MethodBinding methodBinding, AnnotationMethodDeclaration declaration) {
int attributesNumber = generateMethodInfoAttributes(methodBinding);
int attributeOffset = this.contentsOffset;
if ((declaration.modifiers & ClassFileConstants.AccAnnotationDefault) != 0) {
// add an annotation default attribute
attributesNumber += generateAnnotationDefaultAttribute(declaration, attributeOffset);
}
return attributesNumber;
}
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:10,代码来源:ClassFile.java
示例5: consumeAnnotationTypeMemberDeclaration
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
protected void consumeAnnotationTypeMemberDeclaration() {
// AnnotationTypeMemberDeclaration ::= AnnotationTypeMemberDeclarationHeader AnnotationTypeMemberHeaderExtendedDims DefaultValueopt ';'
AnnotationMethodDeclaration annotationTypeMemberDeclaration = (AnnotationMethodDeclaration) this.astStack[this.astPtr];
annotationTypeMemberDeclaration.modifiers |= ExtraCompilerModifiers.AccSemicolonBody;
// store the this.endPosition (position just before the '}') in case there is
// a trailing comment behind the end of the method
int declarationEndPosition = flushCommentsDefinedPriorTo(this.endStatementPosition);
annotationTypeMemberDeclaration.bodyStart = this.endStatementPosition;
annotationTypeMemberDeclaration.bodyEnd = declarationEndPosition;
annotationTypeMemberDeclaration.declarationSourceEnd = declarationEndPosition;
}
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:12,代码来源:Parser.java
示例6: annotationMembersCannotHaveParameters
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
public void annotationMembersCannotHaveParameters(AnnotationMethodDeclaration annotationMethodDeclaration) {
this.handle(
IProblem.AnnotationMembersCannotHaveParameters,
NoArgument,
NoArgument,
annotationMethodDeclaration.sourceStart,
annotationMethodDeclaration.sourceEnd);
}
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:9,代码来源:ProblemReporter.java
示例7: annotationMembersCannotHaveTypeParameters
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
public void annotationMembersCannotHaveTypeParameters(AnnotationMethodDeclaration annotationMethodDeclaration) {
this.handle(
IProblem.AnnotationMembersCannotHaveTypeParameters,
NoArgument,
NoArgument,
annotationMethodDeclaration.sourceStart,
annotationMethodDeclaration.sourceEnd);
}
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:9,代码来源:ProblemReporter.java
示例8: illegalExtendedDimensions
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
public void illegalExtendedDimensions(AnnotationMethodDeclaration annotationTypeMemberDeclaration) {
this.handle(
IProblem.IllegalExtendedDimensions,
NoArgument,
NoArgument,
annotationTypeMemberDeclaration.sourceStart,
annotationTypeMemberDeclaration.sourceEnd);
}
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:9,代码来源:ProblemReporter.java
示例9: visit
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
@Override public boolean visit(AnnotationMethodDeclaration node, ClassScope classScope) {
fixPositions(setGeneratedBy(node, source));
return super.visit(node, classScope);
}
开发者ID:git03394538,项目名称:lombok-ianchiu,代码行数:5,代码来源:SetGeneratedByVisitor.java
示例10: visit
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
public boolean visit(
AnnotationMethodDeclaration annotationTypeMemberDeclaration,
ClassScope scope) {
/*
* Print comments to get proper line number
*/
this.scribe.printComment();
this.scribe.printModifiers(annotationTypeMemberDeclaration.annotations, this, ICodeFormatterConstants.ANNOTATION_ON_METHOD);
this.scribe.space();
/*
* Print the method return type
*/
final TypeReference returnType = annotationTypeMemberDeclaration.returnType;
final MethodScope annotationTypeMemberDeclarationScope = annotationTypeMemberDeclaration.scope;
if (returnType != null) {
returnType.traverse(this, annotationTypeMemberDeclarationScope);
}
/*
* Print the method name
*/
this.scribe.printNextToken(TerminalTokens.TokenNameIdentifier, true);
this.scribe.printNextToken(TerminalTokens.TokenNameLPAREN, this.preferences.insert_space_before_opening_paren_in_annotation_type_member_declaration);
this.scribe.printNextToken(TerminalTokens.TokenNameRPAREN, this.preferences.insert_space_between_empty_parens_in_annotation_type_member_declaration);
/*
* Check for extra dimensions
*/
int extraDimensions = annotationTypeMemberDeclaration.extendedDimensions;
if (extraDimensions != 0) {
if (this.preferences.insert_space_before_opening_bracket_in_array_type_reference) {
this.scribe.space();
}
for (int i = 0; i < extraDimensions; i++) {
this.scribe.printNextToken(TerminalTokens.TokenNameLBRACKET);
if (this.preferences.insert_space_between_brackets_in_array_type_reference) {
this.scribe.space();
}
this.scribe.printNextToken(TerminalTokens.TokenNameRBRACKET);
}
}
Expression defaultValue = annotationTypeMemberDeclaration.defaultValue;
if (defaultValue != null) {
this.scribe.printNextToken(TerminalTokens.TokenNamedefault, true);
this.scribe.space();
defaultValue.traverse(this, (BlockScope) null);
}
this.scribe.printNextToken(TerminalTokens.TokenNameSEMICOLON, this.preferences.insert_space_before_semicolon);
this.scribe.printComment(CodeFormatter.K_UNKNOWN, Scribe.BASIC_TRAILING_COMMENT);
return false;
}
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:53,代码来源:CodeFormatterVisitor.java
示例11: visit
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
public boolean visit(
AnnotationMethodDeclaration annotationTypeMemberDeclaration,
ClassScope scope) {
/*
* Print comments to get proper line number
*/
this.scribe.printComment();
this.scribe.printModifiers(annotationTypeMemberDeclaration.annotations, this, ICodeFormatterConstants.ANNOTATION_ON_METHOD);
this.scribe.space();
/*
* Print the method return type
*/
final TypeReference returnType = annotationTypeMemberDeclaration.returnType;
final MethodScope annotationTypeMemberDeclarationScope = annotationTypeMemberDeclaration.scope;
if (returnType != null) {
returnType.traverse(this, annotationTypeMemberDeclarationScope);
}
/*
* Print the method name
*/
this.scribe.printNextToken(TerminalTokens.TokenNameIdentifier, true);
this.scribe.printNextToken(TerminalTokens.TokenNameLPAREN, this.preferences.insert_space_before_opening_paren_in_annotation_type_member_declaration);
this.scribe.printNextToken(TerminalTokens.TokenNameRPAREN, this.preferences.insert_space_between_empty_parens_in_annotation_type_member_declaration);
/*
* Check for extra dimensions
*/
int extraDimensions = annotationTypeMemberDeclaration.extendedDimensions;
if (extraDimensions != 0) {
for (int i = 0; i < extraDimensions; i++) {
this.scribe.printNextToken(TerminalTokens.TokenNameLBRACKET);
this.scribe.printNextToken(TerminalTokens.TokenNameRBRACKET);
}
}
Expression defaultValue = annotationTypeMemberDeclaration.defaultValue;
if (defaultValue != null) {
this.scribe.printNextToken(TerminalTokens.TokenNamedefault, true);
this.scribe.space();
defaultValue.traverse(this, (BlockScope) null);
}
this.scribe.printNextToken(TerminalTokens.TokenNameSEMICOLON, this.preferences.insert_space_before_semicolon);
this.scribe.printComment(CodeFormatter.K_UNKNOWN, Scribe.BASIC_TRAILING_COMMENT);
return false;
}
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion-Juno38,代码行数:47,代码来源:CodeFormatterVisitor.java
示例12: endVisit
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
@Override
public void endVisit(AnnotationMethodDeclaration x, ClassScope classScope) {
endVisit((MethodDeclaration) x, classScope);
}
开发者ID:WeTheInternet,项目名称:xapi,代码行数:5,代码来源:GwtAstBuilder.java
示例13: visit
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
@Override
public boolean visit(AnnotationMethodDeclaration x, ClassScope classScope) {
return visit((MethodDeclaration) x, classScope);
}
开发者ID:WeTheInternet,项目名称:xapi,代码行数:5,代码来源:GwtAstBuilder.java
示例14: visit
import org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration; //导入依赖的package包/类
@Override public boolean visit(AnnotationMethodDeclaration node, ClassScope classScope) {
setGeneratedBy(node, source);
applyOffset(node);
return super.visit(node, classScope);
}
开发者ID:redundent,项目名称:lombok,代码行数:6,代码来源:SetGeneratedByVisitor.java
注:本文中的org.eclipse.jdt.internal.compiler.ast.AnnotationMethodDeclaration类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论