Files
csharp/gen/KubernetesGenerator/UtilHelper.cs
Boshi Lian 743e859889 source generators: (#753)
* introduce net5 source generator: version convert

* remove unused generator related files
2021-12-19 08:59:24 -08:00

40 lines
1.1 KiB
C#

using System.Collections.Generic;
using System.Linq;
using System.Runtime.CompilerServices;
using NSwag;
using Nustache.Core;
namespace KubernetesGenerator
{
internal class UtilHelper : INustacheHelper
{
public void RegisterHelper()
{
Helpers.Register(nameof(IfKindIs), IfKindIs);
}
public static void IfKindIs(RenderContext context, IList<object> arguments, IDictionary<string, object> options,
RenderBlock fn, RenderBlock inverse)
{
var parameter = arguments?.FirstOrDefault() as OpenApiParameter;
if (parameter != null)
{
string kind = null;
if (arguments.Count > 1)
{
kind = arguments[1] as string;
}
if (kind == "query" && parameter.Kind == OpenApiParameterKind.Query)
{
fn(null);
}
else if (kind == "path" && parameter.Kind == OpenApiParameterKind.Path)
{
fn(null);
}
}
}
}
}