# `InstructionLinkNode` This node represents a reference to an existing [`InstructionNode`](../InstructionNode.md) in the Codama IDL. ## Attributes ### Data | Attribute | Type | Description | | --------- | ----------------------- | ------------------------------------------------------------------------------- | | `kind` | `"instructionLinkNode"` | The node discriminator. | | `name` | `CamelCaseString` | The name of the [`InstructionNode`](../InstructionNode.md) we are referring to. | ### Children | Attribute | Type | Description | | --------- | ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | | `program` | [`ProgramLinkNode`](./ProgramLinkNode.md) | (Optional) The program associated with the linked instruction. Default to using the program we are currently under. | ## Functions ### `instructionLinkNode(name, program?)` Helper function that creates an `InstructionLinkNode` object from the name of the `InstructionNode` we are referring to. If the instruction is from another program, the `program` parameter must be provided as either a `string` or a `ProgramLinkNode`. ```ts const node = instructionLinkNode('myInstruction'); const nodeFromAnotherProgram = instructionLinkNode('myInstruction', 'myOtherProgram'); ```