blob: 55cbed853457aa161a2356edfedf087465cfa4d1 [file] [log] [blame]
"""Filters out ignored source files
- Reads a list of files from stdin
- Writes a list of unignored files to stdout
"""
import itertools as IT
import sys
def main():
# directory subtrees omitted from consideration
skip = [
# tests
'tools/base/bazel/test',
'tools/base/build-system/integration-test/databinding/src/test',
'tools/base/pixelprobe/src/test',
'tools/base/profiler/tests',
# generated
'tools/adt/idea/android-lang-databinding/gen',
'tools/adt/idea/android-lang/gen',
'tools/adt/idea/artwork/gen',
'tools/adt/idea/smali/gen',
# external
'tools/base/zipflinger',
'tools/idea',
'tools/studio',
'tools/swing-testing',
'tools/vendor/adt_infra_internal',
'tools/vendor/google/firebase',
'tools/vendor/google/real-world-integration-test',
'tools/vendor/google/url-assistant',
'tools/vendor/intellij',
]
# file extensions we care about
ends = [
'.java',
'.kt',
]
for path in sys.stdin:
path = path.strip()
# ignore skipped directories
if any(IT.imap(path.startswith, skip)):
continue
# ignore non-source files
if not any(IT.imap(path.endswith, ends)):
continue
sys.stdout.write(path + "\n")
if __name__ == '__main__':
main()