An Anchor generated module, providing a set of structs
mirroring the structs deriving Accounts, where each field is
a Pubkey. This is useful for specifying accounts for a client.
An Anchor generated module containing the program’s set of
instructions, where each method handler in the #[program] mod is
associated with a struct defining the input arguments to the
method. These should be used directly, when one wants to serialize
Anchor instruction data, for example, when speciying
instructions on a client.
The Anchor codegen exposes a programming model where a user defines
a set of methods inside of a #[program] module in a way similar
to writing RPC request handlers. The macro then generates a bunch of
code wrapping these user defined methods into something that can be
executed on Solana.