private float GetOutputHeight(int index)
        {
            var output     = _caller.Outputs[index];
            var definition = _caller.GetOutputDefinition(output);

            switch (output.Type)
            {
            case InstructionOutputType.Reference: return(VariableReferenceControl.GetHeight());

            default: return(EditorGUIUtility.singleLineHeight);
            }
        }
        private float GetInputHeight(int index)
        {
            var input      = _caller.Inputs[index];
            var definition = _caller.GetInputDefinition(input);

            switch (input.Type)
            {
            case InstructionInputType.Reference: return(VariableReferenceControl.GetHeight());

            case InstructionInputType.Value: return(VariableValueDrawer.GetHeight(input.Value, definition.Definition, true));

            default: return(EditorGUIUtility.singleLineHeight);
            }
        }