2007-12-15 Marek Habersack <mhabersack@novell.com>
authorMarek Habersack <grendel@twistedcode.net>
Sat, 15 Dec 2007 01:46:04 +0000 (01:46 -0000)
committerMarek Habersack <grendel@twistedcode.net>
Sat, 15 Dec 2007 01:46:04 +0000 (01:46 -0000)
commitf3e716d95e541c37a15b430c754f00ad80259bee
tree2f9484660dc14c912126f8bd77ac4fc961a99c3f
parent6b3c530aa2c4aea71d079434f65de40dcf6f3ebb
2007-12-15  Marek Habersack  <mhabersack@novell.com>

* System.dll.sources: added
System.CodeDom.Compiler/CompilerProviderOption.cs and
System.CodeDom.Compiler/CompilerProviderOptionsCollection.cs
2007-12-15  Marek Habersack  <mhabersack@novell.com>

* CSharpCodeProvider.cs: added support for the 2.0sp1 constructor
which takes a Dictionary <string, string> parameter with compiler
provider options. If any options are present, the
generator/compiler are created using appropriate constructor
overload.

* CSharpCodeGenerator.cs: added support for the 2.0sp1 constructor
which takes a Dictionary <string, string> parameter with compiler
provider options.

* CSharpCodeCompiler.cs: added support for the 2.0sp1 constructor
which takes a Dictionary <string, string> parameter with compiler
provider options. The "CompilerVersion" option is supported, with
possible values "2.0" (currently maps to -langversion:Default) and
"3.5" (currently maps to -langversion:linq).
2007-12-15  Marek Habersack  <mhabersack@novell.com>

* Compiler.cs: added support for the default collection of
<providerOption> child elements and corresponding public
properties (ProviderOptions and ProviderOptionsDictionary).

* CompilerInfo.cs: added ProviderOptions dictionary, to hold
values from the <providerOption> collection of the
system.codeDom/compilers/compiler/ element.
CodeDomProviderType throws an exception if the provider type
cannot be found, as per MSDN.
CreateProvider uses the new provider constructor which takes
provider options dictionary as its parameter, if found in the
provider type.

* CompilerCollection.cs: compiler defaults are initialized using
the provider options dictionary, with one option present -
"CompilerVersion" set to "2.0".
Two dictionaries to map languages and extensions to compiler
information objects added.

* CompilerProviderOption.cs: added - implements the
<providerOption> element.

* CompilerProviderOptionsCollection.cs: added - implements
collection for the 2.0sp1 <providerOption> child element of the
system.codeDom/compilers/compiler element.

svn path=/trunk/mcs/; revision=91337
12 files changed:
mcs/class/System/ChangeLog
mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs
mcs/class/System/Microsoft.CSharp/CSharpCodeGenerator.cs
mcs/class/System/Microsoft.CSharp/CSharpCodeProvider.cs
mcs/class/System/Microsoft.CSharp/ChangeLog
mcs/class/System/System.CodeDom.Compiler/ChangeLog
mcs/class/System/System.CodeDom.Compiler/Compiler.cs
mcs/class/System/System.CodeDom.Compiler/CompilerCollection.cs
mcs/class/System/System.CodeDom.Compiler/CompilerInfo.cs
mcs/class/System/System.CodeDom.Compiler/CompilerProviderOption.cs [new file with mode: 0644]
mcs/class/System/System.CodeDom.Compiler/CompilerProviderOptionsCollection.cs [new file with mode: 0644]
mcs/class/System/System.dll.sources