本文整理汇总了Java中com.intellij.psi.PsiModifierList.hasExplicitModifier方法的典型用法代码示例。如果您正苦于以下问题:Java PsiModifierList.hasExplicitModifier方法的具体用法?Java PsiModifierList.hasExplicitModifier怎么用?Java PsiModifierList.hasExplicitModifier使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.intellij.psi.PsiModifierList
的用法示例。
在下文中一共展示了PsiModifierList.hasExplicitModifier方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: report
import com.intellij.psi.PsiModifierList; //导入方法依赖的package包/类
public void report(PsiModifierList list) {
for(String modifier : PsiModifier.MODIFIERS){
if (list.hasExplicitModifier(modifier) || list.hasModifierProperty(modifier)) {
System.out.println(" PsiModifier -> "+modifier);
}
}
}
示例2: markLeakSuspects
import com.intellij.psi.PsiModifierList; //导入方法依赖的package包/类
private void markLeakSuspects(PsiElement element, PsiElement lambdaBody, @NonNull final JavaContext context) {
if (element instanceof PsiReferenceExpression) {
PsiReferenceExpression ref = (PsiReferenceExpression) element;
if (ref.getQualifierExpression() == null) {
PsiElement res = ref.resolve();
if (!(res instanceof PsiParameter)) {
if (!(res instanceof PsiClass)) {
boolean error = false;
if (res instanceof PsiLocalVariable) {
PsiLocalVariable lVar = (PsiLocalVariable) res;
if (!isParent(lambdaBody, lVar.getParent())) {
error = true;
}
}
if (res instanceof PsiField) {
PsiField field = (PsiField) res;
final PsiModifierList modifierList = field.getModifierList();
if (modifierList == null) {
error = true;
} else if (!modifierList.hasExplicitModifier(PsiModifier.STATIC)) {
error = true;
}
}
if (error) {
context.report(ISSUE, element, context.getNameLocation(element), "Possible leak");
}
}
}
}
}
for (PsiElement psiElement : element.getChildren()) {
markLeakSuspects(psiElement, lambdaBody, context);
}
}
示例3: hasExplicitModifier
import com.intellij.psi.PsiModifierList; //导入方法依赖的package包/类
@Override
public boolean hasExplicitModifier(@NotNull final String name) {
for (PsiModifierList sublist : mySublists) {
if (sublist.hasExplicitModifier(name)) return true;
}
return false;
}
示例4: getPublicAnnotatedClass
import com.intellij.psi.PsiModifierList; //导入方法依赖的package包/类
/**
* NOTE: requires readAction, if not on the dispatch thread Get the public class in a file that is
* annotated with a certain annotation.
*/
public static PsiClass getPublicAnnotatedClass(PsiJavaFile psiJavaFile, String annotationFqn) {
PsiClass[] classes = psiJavaFile.getClasses();
for (PsiClass cls : classes) {
PsiModifierList modifierList = cls.getModifierList();
if (modifierList != null && modifierList.hasExplicitModifier(PsiModifier.PUBLIC)) {
if (AnnotationUtil.isAnnotated(cls, annotationFqn, false)) {
return cls;
}
}
}
return null;
}
示例5: getModifiers
import com.intellij.psi.PsiModifierList; //导入方法依赖的package包/类
public static long getModifiers( PsiModifierList modifierList )
{
long modifiers = 0;
if( modifierList.hasExplicitModifier( PsiModifier.ABSTRACT ) )
{
modifiers |= Modifier.ABSTRACT;
}
if( modifierList.hasExplicitModifier( PsiModifier.DEFAULT ) )
{
modifiers |= 0x80000000000L; //Flags.DEFAULT;
}
if( modifierList.hasExplicitModifier( PsiModifier.FINAL ) )
{
modifiers |= Modifier.FINAL;
}
if( modifierList.hasExplicitModifier( PsiModifier.PRIVATE ) )
{
modifiers |= Modifier.PRIVATE;
}
if( modifierList.hasExplicitModifier( PsiModifier.PROTECTED ) )
{
modifiers |= Modifier.PROTECTED;
}
if( modifierList.hasExplicitModifier( PsiModifier.PUBLIC ) )
{
modifiers |= Modifier.PUBLIC;
}
if( modifierList.hasExplicitModifier( PsiModifier.STATIC ) )
{
modifiers |= Modifier.STATIC;
}
if( modifierList.hasExplicitModifier( PsiModifier.SYNCHRONIZED ) )
{
modifiers |= Modifier.SYNCHRONIZED;
}
if( modifierList.hasExplicitModifier( PsiModifier.TRANSIENT ) )
{
modifiers |= Modifier.TRANSIENT;
}
if( modifierList.hasExplicitModifier( PsiModifier.VOLATILE ) )
{
modifiers |= Modifier.VOLATILE;
}
return modifiers;
}
示例6: hasModifierProperty
import com.intellij.psi.PsiModifierList; //导入方法依赖的package包/类
@Override
public boolean hasModifierProperty(@NonNls @NotNull String name) {
final PsiModifierList list = getModifierList();
return list != null && list.hasExplicitModifier(name);
}
示例7: checkSuperClassModifiers
import com.intellij.psi.PsiModifierList; //导入方法依赖的package包/类
private void checkSuperClassModifiers(PsiClass superClass, List<String> warnings) {
final PsiModifierList modifierList = superClass.getModifierList();
if (modifierList != null && modifierList.hasExplicitModifier(PsiModifier.FINAL)) {
warnings.add("Supertype '" + superClass.getQualifiedName() + "' is final.");
}
}
示例8: hasPackagePrivateModifier
import com.intellij.psi.PsiModifierList; //导入方法依赖的package包/类
private boolean hasPackagePrivateModifier(@NotNull PsiModifierList modifierList) {
return !(modifierList.hasExplicitModifier(PsiModifier.PUBLIC) || modifierList.hasExplicitModifier(PsiModifier.PRIVATE) ||
modifierList.hasExplicitModifier(PsiModifier.PROTECTED));
}