Skip to main content

A python module to parse Android.bp files

Project description

android-bp

A python module to parse Android.bp files (wrapper for android_bp rust module)

Goals

This module will quickly parse Android.bp files and provide a python interface to access the data.

Non-Goals

This module is only intended to parse Android.bp files, not to generate or rewrite them.

Usage

    from android_bp import Blueprint

    # bp is a rust object, but behave mostly like a read only python object
    bp = Blueprint.from_file("Android.bp")

    # for debug, you can print any of internal objects
    # they will be printed as rust would in debug fmt
    print(bp)

    # internal variables are accessible as a python dict
    print(bp.variables)

    # modules are accessible as a python list
    for m in bp.modules:
        if m.__type__ == "rust_binary":
            # module properties can be accessed directly as python attributes
            print(m.name)

    # or iter them by type
    for m in bp.modules_by_type("rust_host_test"):
        # or via __dict__
        print(m.__dict__["name"])

        # for convenience, unknown properties return None (not an AttributeError)
        print(m.unknown_attribute) # prints None

        # map properties are accessible as python dicts
        print(m.test_options['unit_test'])

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

android_bp-0.2.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

android_bp-0.2.1-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.2 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ s390x

android_bp-0.2.1-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ppc64le

android_bp-0.2.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARMv7l

android_bp-0.2.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

android_bp-0.2.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.5+ i686

android_bp-0.2.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

android_bp-0.2.1-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.2 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ s390x

android_bp-0.2.1-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ppc64le

android_bp-0.2.1-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARMv7l

android_bp-0.2.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

android_bp-0.2.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.5+ i686

android_bp-0.2.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

android_bp-0.2.1-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.2 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ s390x

android_bp-0.2.1-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ppc64le

android_bp-0.2.1-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARMv7l

android_bp-0.2.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

android_bp-0.2.1-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded PyPy manylinux: glibc 2.5+ i686

android_bp-0.2.1-cp312-none-win_amd64.whl (170.1 kB view hashes)

Uploaded CPython 3.12 Windows x86-64

android_bp-0.2.1-cp312-none-win32.whl (167.2 kB view hashes)

Uploaded CPython 3.12 Windows x86

android_bp-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

android_bp-0.2.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.2 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ s390x

android_bp-0.2.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ppc64le

android_bp-0.2.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARMv7l

android_bp-0.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

android_bp-0.2.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.5+ i686

android_bp-0.2.1-cp312-cp312-macosx_11_0_arm64.whl (279.5 kB view hashes)

Uploaded CPython 3.12 macOS 11.0+ ARM64

android_bp-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl (282.2 kB view hashes)

Uploaded CPython 3.12 macOS 10.12+ x86-64

android_bp-0.2.1-cp311-none-win_amd64.whl (171.4 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

android_bp-0.2.1-cp311-none-win32.whl (168.6 kB view hashes)

Uploaded CPython 3.11 Windows x86

android_bp-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

android_bp-0.2.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.2 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ s390x

android_bp-0.2.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ppc64le

android_bp-0.2.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARMv7l

android_bp-0.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

android_bp-0.2.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.5+ i686

android_bp-0.2.1-cp311-cp311-macosx_11_0_arm64.whl (281.5 kB view hashes)

Uploaded CPython 3.11 macOS 11.0+ ARM64

android_bp-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl (283.5 kB view hashes)

Uploaded CPython 3.11 macOS 10.12+ x86-64

android_bp-0.2.1-cp310-none-win_amd64.whl (171.2 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

android_bp-0.2.1-cp310-none-win32.whl (168.3 kB view hashes)

Uploaded CPython 3.10 Windows x86

android_bp-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

android_bp-0.2.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.2 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ s390x

android_bp-0.2.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ppc64le

android_bp-0.2.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARMv7l

android_bp-0.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

android_bp-0.2.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.5+ i686

android_bp-0.2.1-cp310-cp310-macosx_11_0_arm64.whl (281.3 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ ARM64

android_bp-0.2.1-cp310-cp310-macosx_10_12_x86_64.whl (283.4 kB view hashes)

Uploaded CPython 3.10 macOS 10.12+ x86-64

android_bp-0.2.1-cp39-none-win_amd64.whl (171.4 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

android_bp-0.2.1-cp39-none-win32.whl (168.5 kB view hashes)

Uploaded CPython 3.9 Windows x86

android_bp-0.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

android_bp-0.2.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.2 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ s390x

android_bp-0.2.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ppc64le

android_bp-0.2.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARMv7l

android_bp-0.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

android_bp-0.2.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.5+ i686

android_bp-0.2.1-cp39-cp39-macosx_11_0_arm64.whl (281.1 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ ARM64

android_bp-0.2.1-cp39-cp39-macosx_10_12_x86_64.whl (283.6 kB view hashes)

Uploaded CPython 3.9 macOS 10.12+ x86-64

android_bp-0.2.1-cp38-none-win_amd64.whl (171.2 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

android_bp-0.2.1-cp38-none-win32.whl (168.3 kB view hashes)

Uploaded CPython 3.8 Windows x86

android_bp-0.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

android_bp-0.2.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.2 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ s390x

android_bp-0.2.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (1.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ppc64le

android_bp-0.2.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARMv7l

android_bp-0.2.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

android_bp-0.2.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl (1.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.5+ i686

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page