# `Monty.ModuleMap.Data`
[🔗](https://github.com/d-led/ex.tbp.monty/blob/v0.1.0/packages/ex_tbp_monty_core/lib/monty/module_map/data.ex#L1)

The module map itself: one entry per Python file, generated from the checkouts.

Generated by `mix monty.module_map.gen`; do not edit by hand, except to mark a
module `:excluded` or `:partial` with a reason, or to exclude a class and say
why.

It is a literal here rather than a file read at run time: the map is data, and
the code that mirrors Monty should not be a reader of files it is told about.

`sources/0` says which commit of each package these entries were read from.
A map generated before a checkout moved is a map of the commits it names, not
of the code beside it, and `mix monty.module_map.verify` says so.

# `entries`

```elixir
@spec entries() :: [map()]
```

Every entry, in the order the generator wrote them.

# `sources`

```elixir
@spec sources() :: %{
  optional(String.t()) =&gt; %{optional(String.t()) =&gt; String.t() | nil}
}
```

The commit each package was at when this map was generated.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
