public TemplateDirectiveInfo([NotNull] T4Environment environment) : base("template") { bool isAtLeastVs11 = environment.VsVersion2.Major >= 11; _languageAttribute = new EnumDirectiveAttributeInfo("language", DirectiveAttributeOptions.None, "C#", "VB"); _hostSpecificAttribute = isAtLeastVs11 ? new EnumDirectiveAttributeInfo("hostspecific",DirectiveAttributeOptions.None, "true", "false", "trueFromBase") : new BooleanDirectiveAttributeInfo("hostspecific", DirectiveAttributeOptions.None); _debugAttribute = new BooleanDirectiveAttributeInfo("debug", DirectiveAttributeOptions.None); _inheritsAttribute = new DirectiveAttributeInfo("inherits", DirectiveAttributeOptions.None); _cultureAttribute = new CultureDirectiveAttributeInfo("culture", DirectiveAttributeOptions.None); _compilerOptionsAttribute = new DirectiveAttributeInfo("compilerOptions", DirectiveAttributeOptions.None); _linePragmasAttribute = new BooleanDirectiveAttributeInfo("linePragmas", DirectiveAttributeOptions.None); _visibilityAttribute = new EnumDirectiveAttributeInfo("visibility", DirectiveAttributeOptions.None, "public", "internal"); var attributes = new List<DirectiveAttributeInfo>(8) { _languageAttribute, _hostSpecificAttribute, _debugAttribute, _inheritsAttribute, _cultureAttribute, _compilerOptionsAttribute }; if (isAtLeastVs11) { attributes.Add(_linePragmasAttribute); attributes.Add(_visibilityAttribute); } _supportedAttributes = attributes.AsReadOnly(); }
public IncludeDirectiveInfo() : base("include") { _fileAttribute = new DirectiveAttributeInfo("file", DirectiveAttributeOptions.Required | DirectiveAttributeOptions.DisplayInCodeStructure); _supportedAttributes = Array.AsReadOnly(new[] { _fileAttribute }); }
public ImportDirectiveInfo() : base("import") { _namespaceAttribute = new DirectiveAttributeInfo("namespace", DirectiveAttributeOptions.Required | DirectiveAttributeOptions.DisplayInCodeStructure); _supportedAttributes = Array.AsReadOnly(new[] { _namespaceAttribute }); }
public AssemblyDirectiveInfo() : base("assembly") { _nameAttribute = new DirectiveAttributeInfo("name", DirectiveAttributeOptions.Required | DirectiveAttributeOptions.DisplayInCodeStructure); _supportedAttributes = Array.AsReadOnly(new[] { _nameAttribute }); }
public IncludeDirectiveInfo([NotNull] T4Environment environment) : base("include") { _fileAttribute = new DirectiveAttributeInfo("file", DirectiveAttributeOptions.Required | DirectiveAttributeOptions.DisplayInCodeStructure); _onceAttribute = new BooleanDirectiveAttributeInfo("once", DirectiveAttributeOptions.None); _supportedAttributes = Array.AsReadOnly(environment.VsVersion2.Major >= 12 ? new[] { _fileAttribute, _onceAttribute } : new[] { _fileAttribute }); }
public OutputDirectiveInfo() : base("output") { _extensionAttribute = new DirectiveAttributeInfo("extension", DirectiveAttributeOptions.None); _encodingAttribute = new EncodingDirectiveAttributeInfo("encoding", DirectiveAttributeOptions.None); _supportedAttributes = Array.AsReadOnly(new[] { _extensionAttribute, _encodingAttribute }); }
public ParameterDirectiveInfo() : base("parameter") { _typeAttribute = new DirectiveAttributeInfo("type", DirectiveAttributeOptions.Required); _nameAttribute = new DirectiveAttributeInfo("name", DirectiveAttributeOptions.Required | DirectiveAttributeOptions.DisplayInCodeStructure); _supportedAttributes = Array.AsReadOnly(new[] { _typeAttribute, _nameAttribute }); }