# This directory contains implementations of starlark functions that contain
# complex logic. The objective is to keep the rules themselves as simple as
# possible, so that we can perform very thorough testing on the implementation.

# I wanted to call it private / internal, but then buildifier complains about
# referencing it from the tests directory.
