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.
For all swap instructions and contexts, the mint is defined with respect to the party that provides that token in the swap.
So mint_searcher refers to the token that the searcher provides in the swap,
and mint_user refers to the token that the user provides in the swap.
The {X}_ta/ata_mint_{Y} notation indicates the (associated) token account belonging to X for the mint of the token Y provides in the swap.
For example, searcher_ta_mint_searcher is the searcher’s token account of the mint the searcher provides in the swap,
and user_ata_mint_searcher is the user’s token account of the same mint.
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.