microsoft/teams.net

Public

mirrored fromhttps://github.com/microsoft/teams.netAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
v2.0.0-preview.5

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

Libraries/Microsoft.Teams.AI/FunctionCollection.cs

38lines · modecode

1namespace Microsoft.Teams.AI;
2
3/// <summary>
4/// a collection of functions
5/// </summary>
6public class FunctionCollection : Dictionary<string, IFunction>
7{
8 /// <summary>
9 /// the names of the functions in
10 /// the collection
11 /// </summary>
12 public IList<string> Names => Keys.ToList();
13
14 /// <summary>
15 /// the functions in the collection
16 /// as a list
17 /// </summary>
18 public IList<IFunction> List => Values.ToList();
19
20 /// <summary>
21 /// check if the collection contains
22 /// some function name
23 /// </summary>
24 /// <param name="name">the function name</param>
25 public bool Has(string name) => ContainsKey(name);
26
27 /// <summary>
28 /// get a function
29 /// </summary>
30 /// <param name="name">the function name</param>
31 public IFunction? Get(string name) => !Has(name) ? null : this[name];
32
33 /// <summary>
34 /// add a function
35 /// </summary>
36 /// <param name="function">the function to add</param>
37 public void Add(IFunction function) => this[function.Name] = function;
38}