# i2

Meta-programming tools to build declarative frameworks

### Modules

| [`base`](i2.base.html.md#module-i2.base)                     | Tools to provide meta-interfaces ("mints") of python objects.                                                                                                                                                                                                                                                               |
|------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [`castgraph`](i2.castgraph.html.md#module-i2.castgraph)           | A lightweight transformation service for Python that solves the "stable role, unstable representation" problem: a resource has a consistent semantic role (e.g., configuration, text, structured record) but appears in many forms (filepath, string, dict, custom class), while consumers expect specific representations. |
| [`chain_map`](i2.chain_map.html.md#module-i2.chain_map)           | Merge mappings                                                                                                                                                                                                                                                                                                              |
| [`deco`](i2.deco.html.md#module-i2.deco)                     | Decorator tools                                                                                                                                                                                                                                                                                                             |
| [`doc_mint`](i2.doc_mint.html.md#module-i2.doc_mint)             | Meta-interfaces                                                                                                                                                                                                                                                                                                             |
| [`errors`](i2.errors.html.md#module-i2.errors)                 | Error objects                                                                                                                                                                                                                                                                                                               |
| [`footprints`](i2.footprints.html.md#module-i2.footprints)         | Analyzing what attributes of an input object a function actually uses                                                                                                                                                                                                                                                       |
| [`io_trans`](i2.io_trans.html.md#module-i2.io_trans)             | Tools to make input and output transforming decorators.                                                                                                                                                                                                                                                                     |
| [`itypes`](i2.itypes.html.md#module-i2.itypes)                 | Types                                                                                                                                                                                                                                                                                                                       |
| [`key_path`](i2.key_path.html.md#module-i2.key_path)             | Flattening maps and manipulating key paths                                                                                                                                                                                                                                                                                  |
| [`multi_object`](i2.multi_object.html.md#module-i2.multi_object)     | A few fundamental tools to operate on a fixed collection of objects (e.g. functions).                                                                                                                                                                                                                                       |
| [`routing_forest`](i2.routing_forest.html.md#module-i2.routing_forest) | Tools to specify functions through trees and forests.                                                                                                                                                                                                                                                                       |
| [`signatures`](i2.signatures.html.md#module-i2.signatures)         | Signature calculus: Tools to make it easier to work with function's signatures.                                                                                                                                                                                                                                             |
| [`util`](i2.util.html.md#module-i2.util)                     | Misc util objects                                                                                                                                                                                                                                                                                                           |
| [`wrapper`](i2.wrapper.html.md#module-i2.wrapper)               | A wrapper object and tools to work with it                                                                                                                                                                                                                                                                                  |
