tree 17deb44beac6cd4f0322fe7f317ccf4c30714ab1
parent e00a681836cd9befe23ff16f477617febcb2c2f2
author Russell Howe <rhowe@siksai.co.uk> 1630746201 +0200
committer rfscholte <rfscholte@apache.org> 1630746201 +0200

[MCOMPILER-398] Simplify the implementation of the inclusion/exclusion logic

    The 'getSourceInclusionScanner' method can be simplified quite considerably.

    In the case where there are no includes or excludes, we can simply reuse the
    empty set of excludes we have rather than pulling an empty set out of
    Collections. This then makes both constructor calls to
    SimpleSourceInclusionScanner the same, so they can be merged.

    For the case where there are no includes, there are two paths. When there are
    also no excludes, we construct a singleton set of the default include pattern
    and assign it to includes. In the other case, where we have excludes but no
    includes, we add the defaultIncludePattern to the empty set of includes we
    have. These are equivalent operations, so merge them as well.

    i.e. have some default includes but allow this to be overridden and also allow
    excludes to be specified.

Signed-off-by: rfscholte <rfscholte@apache.org>
