namespace AIStudio.Tools.ToolCallingSystem.ToolCallingImplementations.Mailboxes; /// /// The attachment of a mail which a passage is from, and where in it, cf. SearchMailsTool. /// /// The filtered name of the attachment, or an empty string when the passage is from no attachment. /// Where in the attachment the passage is, or null when that is not known. internal readonly record struct MailPassageAttachment(string Name, string? Where) { /// /// The passage is from no attachment. /// public static readonly MailPassageAttachment NONE = new(string.Empty, null); /// /// The name of the attachment, followed by where in it the passage is, when that is known. /// public string Label => this.Where is null ? this.Name : $"{this.Name}, {this.Where}"; }