187 lines
6.4 KiB
C#
187 lines
6.4 KiB
C#
// Copyright(c) .NET Foundation.All rights reserved.
|
|
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
|
|
|
using System;
|
|
|
|
namespace Microsoft.AspNetCore.Razor.Language
|
|
{
|
|
public static class DirectiveDescriptorBuilderExtensions
|
|
{
|
|
public static IDirectiveDescriptorBuilder AddMemberToken(this IDirectiveDescriptorBuilder builder)
|
|
{
|
|
return AddMemberToken(builder, name: null, description: null);
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddMemberToken(this IDirectiveDescriptorBuilder builder, string name, string description)
|
|
{
|
|
if (builder == null)
|
|
{
|
|
throw new ArgumentNullException(nameof(builder));
|
|
}
|
|
|
|
builder.Tokens.Add(
|
|
DirectiveTokenDescriptor.CreateToken(
|
|
DirectiveTokenKind.Member,
|
|
optional: false,
|
|
name: name,
|
|
description: description));
|
|
|
|
return builder;
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddNamespaceToken(this IDirectiveDescriptorBuilder builder)
|
|
{
|
|
return AddNamespaceToken(builder, name: null, description: null);
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddNamespaceToken(this IDirectiveDescriptorBuilder builder, string name, string description)
|
|
{
|
|
if (builder == null)
|
|
{
|
|
throw new ArgumentNullException(nameof(builder));
|
|
}
|
|
|
|
builder.Tokens.Add(
|
|
DirectiveTokenDescriptor.CreateToken(
|
|
DirectiveTokenKind.Namespace,
|
|
optional: false,
|
|
name: name,
|
|
description: description));
|
|
|
|
return builder;
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddStringToken(this IDirectiveDescriptorBuilder builder)
|
|
{
|
|
return AddStringToken(builder, name: null, description: null);
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddStringToken(this IDirectiveDescriptorBuilder builder, string name, string description)
|
|
{
|
|
if (builder == null)
|
|
{
|
|
throw new ArgumentNullException(nameof(builder));
|
|
}
|
|
|
|
builder.Tokens.Add(
|
|
DirectiveTokenDescriptor.CreateToken(
|
|
DirectiveTokenKind.String,
|
|
optional: false,
|
|
name: name,
|
|
description: description));
|
|
|
|
return builder;
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddTypeToken(this IDirectiveDescriptorBuilder builder)
|
|
{
|
|
return AddTypeToken(builder, name: null, description: null);
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddTypeToken(this IDirectiveDescriptorBuilder builder, string name, string description)
|
|
{
|
|
if (builder == null)
|
|
{
|
|
throw new ArgumentNullException(nameof(builder));
|
|
}
|
|
|
|
builder.Tokens.Add(
|
|
DirectiveTokenDescriptor.CreateToken(
|
|
DirectiveTokenKind.Type,
|
|
optional: false,
|
|
name: name,
|
|
description: description));
|
|
|
|
return builder;
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddOptionalMemberToken(this IDirectiveDescriptorBuilder builder)
|
|
{
|
|
return AddOptionalMemberToken(builder, name: null, description: null);
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddOptionalMemberToken(this IDirectiveDescriptorBuilder builder, string name, string description)
|
|
{
|
|
if (builder == null)
|
|
{
|
|
throw new ArgumentNullException(nameof(builder));
|
|
}
|
|
|
|
builder.Tokens.Add(
|
|
DirectiveTokenDescriptor.CreateToken(
|
|
DirectiveTokenKind.Member,
|
|
optional: true,
|
|
name: name,
|
|
description: description));
|
|
|
|
return builder;
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddOptionalNamespaceToken(this IDirectiveDescriptorBuilder builder)
|
|
{
|
|
return AddOptionalNamespaceToken(builder, name: null, description: null);
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddOptionalNamespaceToken(this IDirectiveDescriptorBuilder builder, string name, string description)
|
|
{
|
|
if (builder == null)
|
|
{
|
|
throw new ArgumentNullException(nameof(builder));
|
|
}
|
|
|
|
builder.Tokens.Add(
|
|
DirectiveTokenDescriptor.CreateToken(
|
|
DirectiveTokenKind.Namespace,
|
|
optional: true,
|
|
name: name,
|
|
description: description));
|
|
|
|
return builder;
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddOptionalStringToken(this IDirectiveDescriptorBuilder builder)
|
|
{
|
|
return AddOptionalStringToken(builder, name: null, description: null);
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddOptionalStringToken(this IDirectiveDescriptorBuilder builder, string name, string description)
|
|
{
|
|
if (builder == null)
|
|
{
|
|
throw new ArgumentNullException(nameof(builder));
|
|
}
|
|
|
|
builder.Tokens.Add(
|
|
DirectiveTokenDescriptor.CreateToken(
|
|
DirectiveTokenKind.String,
|
|
optional: true,
|
|
name: name,
|
|
description: description));
|
|
|
|
return builder;
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddOptionalTypeToken(this IDirectiveDescriptorBuilder builder)
|
|
{
|
|
return AddOptionalTypeToken(builder, name: null, description: null);
|
|
}
|
|
|
|
public static IDirectiveDescriptorBuilder AddOptionalTypeToken(this IDirectiveDescriptorBuilder builder, string name, string description)
|
|
{
|
|
if (builder == null)
|
|
{
|
|
throw new ArgumentNullException(nameof(builder));
|
|
}
|
|
|
|
builder.Tokens.Add(
|
|
DirectiveTokenDescriptor.CreateToken(
|
|
DirectiveTokenKind.Type,
|
|
optional: true,
|
|
name: name,
|
|
description: description));
|
|
|
|
return builder;
|
|
}
|
|
}
|
|
}
|