Skip to main content

codama_nodes/generated/
instruction_account_node.rs

1use crate::{
2    AccountLinkNode, CamelCaseString, Docs, HasName, InstructionAccountDisplayNode,
3    InstructionInputValueNode, IsSigner,
4};
5use codama_nodes_derive::node;
6
7#[node]
8pub struct InstructionAccountNode {
9    // Data.
10    pub name: CamelCaseString,
11    pub is_writable: bool,
12    pub is_signer: IsSigner,
13    #[serde(skip_serializing_if = "crate::is_default")]
14    pub is_optional: Option<bool>,
15    #[serde(default, skip_serializing_if = "crate::is_default")]
16    pub docs: Docs,
17
18    // Children.
19    #[serde(skip_serializing_if = "crate::is_default")]
20    pub default_value: Box<Option<InstructionInputValueNode>>,
21    #[serde(skip_serializing_if = "crate::is_default")]
22    pub account_link: Option<AccountLinkNode>,
23    #[serde(skip_serializing_if = "crate::is_default")]
24    pub display: Option<InstructionAccountDisplayNode>,
25}
26
27impl HasName for InstructionAccountNode {
28    fn name(&self) -> &CamelCaseString {
29        &self.name
30    }
31}