Crate iota_package_resolver

source ·

Modules§

Structs§

  • A CleverError is a special kind of abort code that is used to encode more information than a normal abort code. These clever errors are used to encode the line number, error constant name, and error constant value as pool indices packed into a format satisfying the ErrorBitset format. This struct is the “inflated” view of that data, providing the module ID, line number, and error constant name and value (if available).
  • Deserialized representation of a struct definition.
  • Fully qualified struct identifier. Uses copy-on-write strings so that when it is used as a key to a map, an instance can be created to query the map without having to allocate strings on the heap.
  • Deserialized representation of a function definition
  • Optional configuration that imposes limits on the work that the resolver can do for each request.
  • Deserialized representation of a type signature that could appear as a function parameter or return.
  • Store which fetches package for the given address from the backend db and caches it locally in an lru cache. On every call to fetch it checks backend db and if package version is stale locally, it updates the local state before returning to the user
  • The Resolver is responsible for providing information about types. It relies on its internal package_store to load packages and then type definitions from those packages.
  • A function parameter or return signature, with its type parameters instantiated.
  • Deserialized representation of an enum definition. These are always held inside an EnumDef.

Enums§

  • The ErrorConstants enum is used to represent the different kinds of error information that can be returned from a clever error when looking at the constant values for the clever error. These values are either:
  • Deserialized representation of a type signature that could appear as a field type for a struct.

Traits§

  • Interface to abstract over access to a store of live packages. Used to override the default store during testing.

Type Aliases§