#[light_program] - wraps the program module and adds necessary code to the instruction functions.
#[light_accounts] - wraps the instruction struct containing both the regular Anchor accounts and compressed accounts.
See the name-server example for the usage.
Related changes:
Introduce LightContext - a new context type which contains accounts (regular) and light_accounts (compressed). It abstracts away the UTXO model from users, allowing to modify compressed accounts the same way as regular ones.
Rename the former #[light_accounts] macro to #[light_system_accounts].
Add the following macros:
#[light_program]
- wraps the program module and adds necessary code to the instruction functions.#[light_accounts]
- wraps the instruction struct containing both the regular Anchor accounts and compressed accounts.See the
name-server
example for the usage.Related changes:
LightContext
- a new context type which containsaccounts
(regular) andlight_accounts
(compressed). It abstracts away the UTXO model from users, allowing to modify compressed accounts the same way as regular ones.#[light_accounts]
macro to#[light_system_accounts]
.