Example usage for org.aspectj.weaver.patterns ModifiersPattern getModifierFlag

List of usage examples for org.aspectj.weaver.patterns ModifiersPattern getModifierFlag

Introduction

In this page you can find the example usage for org.aspectj.weaver.patterns ModifiersPattern getModifierFlag.

Prototype

public static int getModifierFlag(String name) 

Source Link

Usage

From source file:org.caesarj.compiler.aspectj.CaesarWrapperPatternParser.java

License:Open Source License

public ModifiersPattern parseModifiersPattern() {
    int requiredFlags = 0;
    int forbiddenFlags = 0;
    int start;/*from  w w w .ja  va  2 s  . c o  m*/
    while (true) {
        start = tokenSource.getIndex();
        boolean isForbidden = false;
        isForbidden = maybeEat("!");
        IToken t = tokenSource.next();
        int flag = ModifiersPattern.getModifierFlag(t.getString());
        if (flag == -1)
            break;
        if (isForbidden)
            forbiddenFlags |= flag;
        else
            requiredFlags |= flag;
    }

    tokenSource.setIndex(start);
    if (requiredFlags == 0 && forbiddenFlags == 0) {
        return ModifiersPattern.ANY;
    } else {
        return new CaesarModifiersPattern(requiredFlags, forbiddenFlags);
    }
}