public static DirectiveInfo GetDirectiveByName()

in Backend/Core/ForTea.Core/Psi/Directives/T4DirectiveInfoManager.cs [45:70]


    public static DirectiveInfo GetDirectiveByName([CanBeNull] string directiveName) =>
      string.IsNullOrEmpty(directiveName)
        ? null
        : AllDirectives.FirstOrDefault(di => di.Name.Equals(directiveName, StringComparison.OrdinalIgnoreCase));

    public static PsiLanguageType GetLanguageType([CanBeNull] IT4File file)
    {
      string name = file
        ?.Blocks
        .OfType<IT4TemplateDirective>()
        .FirstOrDefault()
        ?.GetFirstAttribute(Template.LanguageAttribute)
        ?.Value
        ?.GetText();
      switch (name)
      {
        case null:
        case LanguageAttributeInfo.CSharpLanguageAttributeValue:
        case LanguageAttributeInfo.NewCSharpLanguageAttributeValue:
          return CSharpLanguage.Instance;
        case LanguageAttributeInfo.VBLanguageAttributeValue:
          return VBLanguage.Instance;
        default:
          return UnknownLanguage.Instance;
      }
    }