proguard.util.StringMatcher Java Examples

The following examples show how to use proguard.util.StringMatcher. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: DynamicClassReferenceInitializer.java    From java-n-IDE-for-Android with Apache License 2.0 5 votes vote down vote up
/**
 * Creates a new DynamicClassReferenceInitializer that optionally prints
 * warnings and notes, with optional class specifications for which never
 * to print notes.
 */
public DynamicClassReferenceInitializer(ClassPool programClassPool,
                                        ClassPool libraryClassPool,
                                        WarningPrinter missingNotePrinter,
                                        WarningPrinter dependencyWarningPrinter,
                                        WarningPrinter notePrinter,
                                        StringMatcher  noteExceptionMatcher)
{
    this.programClassPool         = programClassPool;
    this.libraryClassPool         = libraryClassPool;
    this.missingNotePrinter       = missingNotePrinter;
    this.dependencyWarningPrinter = dependencyWarningPrinter;
    this.notePrinter              = notePrinter;
    this.noteExceptionMatcher     = noteExceptionMatcher;
}
 
Example #2
Source File: DynamicMemberReferenceInitializer.java    From java-n-IDE-for-Android with Apache License 2.0 5 votes vote down vote up
/**
 * Creates a new DynamicMemberReferenceInitializer.
 */
public DynamicMemberReferenceInitializer(ClassPool programClassPool,
                                         ClassPool libraryClassPool,
                                         WarningPrinter notePrinter,
                                         StringMatcher  noteFieldExceptionMatcher,
                                         StringMatcher  noteMethodExceptionMatcher)
{
    this.programClassPool           = programClassPool;
    this.libraryClassPool           = libraryClassPool;
    this.notePrinter                = notePrinter;
    this.noteFieldExceptionMatcher  = noteFieldExceptionMatcher;
    this.noteMethodExceptionMatcher = noteMethodExceptionMatcher;
}
 
Example #3
Source File: Initializer.java    From java-n-IDE-for-Android with Apache License 2.0 5 votes vote down vote up
/**
 * Extracts a list of exceptions of classes for which not to print notes,
 * from the keep configuration.
 */
private StringMatcher createClassNoteExceptionMatcher(List noteExceptions)
{
    if (noteExceptions != null)
    {
        List noteExceptionNames = new ArrayList(noteExceptions.size());
        for (int index = 0; index < noteExceptions.size(); index++)
        {
            KeepClassSpecification keepClassSpecification = (KeepClassSpecification)noteExceptions.get(index);
            if (keepClassSpecification.markClasses)
            {
                // If the class itself is being kept, it's ok.
                String className = keepClassSpecification.className;
                if (className != null)
                {
                    noteExceptionNames.add(className);
                }

                // If all of its extensions are being kept, it's ok too.
                String extendsClassName = keepClassSpecification.extendsClassName;
                if (extendsClassName != null)
                {
                    noteExceptionNames.add(extendsClassName);
                }
            }
        }

        if (noteExceptionNames.size() > 0)
        {
            return new ListParser(new ClassNameParser()).parse(noteExceptionNames);
        }
    }

    return null;
}
 
Example #4
Source File: Initializer.java    From java-n-IDE-for-Android with Apache License 2.0 5 votes vote down vote up
/**
 * Extracts a list of exceptions of field or method names for which not to
 * print notes, from the keep configuration.
 */
private StringMatcher createClassMemberNoteExceptionMatcher(List    noteExceptions,
                                                            boolean isField)
{
    if (noteExceptions != null)
    {
        List noteExceptionNames = new ArrayList();
        for (int index = 0; index < noteExceptions.size(); index++)
        {
            KeepClassSpecification keepClassSpecification = (KeepClassSpecification)noteExceptions.get(index);
            List memberSpecifications = isField ?
                keepClassSpecification.fieldSpecifications :
                keepClassSpecification.methodSpecifications;

            if (memberSpecifications != null)
            {
                for (int index2 = 0; index2 < memberSpecifications.size(); index2++)
                {
                    MemberSpecification memberSpecification =
                        (MemberSpecification)memberSpecifications.get(index2);

                    String memberName = memberSpecification.name;
                    if (memberName != null)
                    {
                        noteExceptionNames.add(memberName);
                    }
                }
            }
        }

        if (noteExceptionNames.size() > 0)
        {
            return new ListParser(new ClassNameParser()).parse(noteExceptionNames);
        }
    }

    return null;
}
 
Example #5
Source File: DynamicClassReferenceInitializer.java    From proguard with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Creates a new DynamicClassReferenceInitializer that optionally prints
 * warnings and notes, with optional class specifications for which never
 * to print notes.
 */
public DynamicClassReferenceInitializer(ClassPool      programClassPool,
                                        ClassPool      libraryClassPool,
                                        WarningPrinter missingNotePrinter,
                                        WarningPrinter dependencyWarningPrinter,
                                        WarningPrinter notePrinter,
                                        StringMatcher  noteExceptionMatcher)
{
    this.programClassPool         = programClassPool;
    this.libraryClassPool         = libraryClassPool;
    this.missingNotePrinter       = missingNotePrinter;
    this.dependencyWarningPrinter = dependencyWarningPrinter;
    this.notePrinter              = notePrinter;
    this.noteExceptionMatcher     = noteExceptionMatcher;
}
 
Example #6
Source File: DynamicMemberReferenceInitializer.java    From proguard with GNU General Public License v2.0 5 votes vote down vote up
/**
 * Creates a new DynamicMemberReferenceInitializer.
 */
public DynamicMemberReferenceInitializer(ClassPool      programClassPool,
                                         ClassPool      libraryClassPool,
                                         WarningPrinter notePrinter,
                                         StringMatcher  noteFieldExceptionMatcher,
                                         StringMatcher  noteMethodExceptionMatcher)
{
    this.programClassPool           = programClassPool;
    this.libraryClassPool           = libraryClassPool;
    this.notePrinter                = notePrinter;
    this.noteFieldExceptionMatcher  = noteFieldExceptionMatcher;
    this.noteMethodExceptionMatcher = noteMethodExceptionMatcher;
}
 
Example #7
Source File: DynamicClassReferenceInitializer.java    From bazel with Apache License 2.0 5 votes vote down vote up
/**
 * Creates a new DynamicClassReferenceInitializer that optionally prints
 * warnings and notes, with optional class specifications for which never
 * to print notes.
 */
public DynamicClassReferenceInitializer(ClassPool      programClassPool,
                                        ClassPool      libraryClassPool,
                                        WarningPrinter missingNotePrinter,
                                        WarningPrinter dependencyWarningPrinter,
                                        WarningPrinter notePrinter,
                                        StringMatcher  noteExceptionMatcher)
{
    this.programClassPool         = programClassPool;
    this.libraryClassPool         = libraryClassPool;
    this.missingNotePrinter       = missingNotePrinter;
    this.dependencyWarningPrinter = dependencyWarningPrinter;
    this.notePrinter              = notePrinter;
    this.noteExceptionMatcher     = noteExceptionMatcher;
}
 
Example #8
Source File: DynamicMemberReferenceInitializer.java    From bazel with Apache License 2.0 5 votes vote down vote up
/**
 * Creates a new DynamicMemberReferenceInitializer.
 */
public DynamicMemberReferenceInitializer(ClassPool      programClassPool,
                                         ClassPool      libraryClassPool,
                                         WarningPrinter notePrinter,
                                         StringMatcher  noteFieldExceptionMatcher,
                                         StringMatcher  noteMethodExceptionMatcher)
{
    this.programClassPool           = programClassPool;
    this.libraryClassPool           = libraryClassPool;
    this.notePrinter                = notePrinter;
    this.noteFieldExceptionMatcher  = noteFieldExceptionMatcher;
    this.noteMethodExceptionMatcher = noteMethodExceptionMatcher;
}
 
Example #9
Source File: AttributeNameFilter.java    From java-n-IDE-for-Android with Apache License 2.0 3 votes vote down vote up
/**
 * Creates a new AttributeNameFilter.
 * @param stringMatcher    the string matcher that will check the attribute
 *                         names.
 * @param attributeVisitor the <code>AttributeVisitor</code> to which
 *                         visits will be delegated.
 */
public AttributeNameFilter(StringMatcher    stringMatcher,
                           AttributeVisitor attributeVisitor)
{
    this.stringMatcher    = stringMatcher;
    this.attributeVisitor = attributeVisitor;
}
 
Example #10
Source File: MemberNameFilter.java    From java-n-IDE-for-Android with Apache License 2.0 3 votes vote down vote up
/**
 * Creates a new MemberNameFilter.
 * @param regularExpressionMatcher the regular expression against which
 *                                 member names will be matched.
 * @param memberVisitor            the <code>MemberVisitor</code> to which
 *                                 visits will be delegated.
 */
public MemberNameFilter(StringMatcher regularExpressionMatcher,
                        MemberVisitor memberVisitor)
{
    this.regularExpressionMatcher = regularExpressionMatcher;
    this.memberVisitor            = memberVisitor;
}
 
Example #11
Source File: ClassNameFilter.java    From java-n-IDE-for-Android with Apache License 2.0 3 votes vote down vote up
/**
 * Creates a new ClassNameFilter.
 * @param regularExpressionMatcher the regular expression against which
 *                                 class names will be matched.
 * @param classVisitor             the <code>ClassVisitor</code> to which
 *                                 visits will be delegated.
 */
public ClassNameFilter(StringMatcher regularExpressionMatcher,
                       ClassVisitor  classVisitor)
{
    this.regularExpressionMatcher = regularExpressionMatcher;
    this.classVisitor             = classVisitor;
}
 
Example #12
Source File: MemberDescriptorFilter.java    From java-n-IDE-for-Android with Apache License 2.0 3 votes vote down vote up
/**
 * Creates a new MemberDescriptorFilter.
 * @param regularExpressionMatcher the regular expression against which
 *                                 member descriptors will be matched.
 * @param memberVisitor            the <code>MemberVisitor</code> to which
 *                                 visits will be delegated.
 */
public MemberDescriptorFilter(StringMatcher regularExpressionMatcher,
                              MemberVisitor memberVisitor)
{
    this.regularExpressionMatcher = regularExpressionMatcher;
    this.memberVisitor            = memberVisitor;
}
 
Example #13
Source File: DataEntryNameFilter.java    From java-n-IDE-for-Android with Apache License 2.0 2 votes vote down vote up
/**
 * Creates a new DataEntryNameFilter.
 * @param stringMatcher the string matcher that will be applied to the names
 *                      of the filtered data entries.
 */
public DataEntryNameFilter(StringMatcher stringMatcher)
{
    this.stringMatcher = stringMatcher;
}
 
Example #14
Source File: DataEntryNameFilter.java    From proguard with GNU General Public License v2.0 2 votes vote down vote up
/**
 * Creates a new DataEntryNameFilter.
 * @param stringMatcher the string matcher that will be applied to the names
 *                      of the filtered data entries.
 */
public DataEntryNameFilter(StringMatcher stringMatcher)
{
    this.stringMatcher = stringMatcher;
}
 
Example #15
Source File: DataEntryNameFilter.java    From bazel with Apache License 2.0 2 votes vote down vote up
/**
 * Creates a new DataEntryNameFilter.
 * @param stringMatcher the string matcher that will be applied to the names
 *                      of the filtered data entries.
 */
public DataEntryNameFilter(StringMatcher stringMatcher)
{
    this.stringMatcher = stringMatcher;
}