Silverlight 5 WinRT

  public abstract class CodeCompiler
  : CodeGenerator, ICodeGenerator, ICodeCompiler
  protected abstract virtual String CompilerName { get; }
  protected abstract virtual String FileExtension { get; }
  protected abstract virtual String CmdArgsFromParameters(CompilerParameters options);
  protected virtual CompilerResults FromDom(CompilerParameters options, CodeCompileUnit e);
  protected virtual CompilerResults FromDomBatch(CompilerParameters options, CodeCompileUnit ea);
  protected virtual CompilerResults FromFile(CompilerParameters options, String fileName);
  protected virtual CompilerResults FromFileBatch(CompilerParameters options, String fileNames);
  protected virtual CompilerResults FromSource(CompilerParameters options, String source);
  protected virtual CompilerResults FromSourceBatch(CompilerParameters options, String sources);
  protected virtual String GetResponseFileCmdArgs(CompilerParameters options, String cmdArgs);
  static protected String JoinStringArray(String sa, String separator);
  protected abstract virtual void ProcessCompilerOutputLine(CompilerResults results, String line);

  public abstract class CodeDomProvider
  : Component, IComponent, IDisposable
  public virtual String FileExtension { get; }
  public virtual LanguageOptions LanguageOptions { get; }
  public virtual CompilerResults CompileAssemblyFromDom(CompilerParameters options, CodeCompileUnit compilationUnits);
  public virtual CompilerResults CompileAssemblyFromFile(CompilerParameters options, String fileNames);
  public virtual CompilerResults CompileAssemblyFromSource(CompilerParameters options, String sources);
  public abstract virtual ICodeCompiler CreateCompiler();
  public virtual String CreateEscapedIdentifier(String value);
  public abstract virtual ICodeGenerator CreateGenerator();
  public virtual ICodeGenerator CreateGenerator(TextWriter output);
  public virtual ICodeGenerator CreateGenerator(String fileName);
  public virtual ICodeParser CreateParser();
  static public CodeDomProvider CreateProvider(String language, IDictionary`2<String, String> providerOptions);
  static public CodeDomProvider CreateProvider(String language);
  public virtual String CreateValidIdentifier(String value);
  public virtual void GenerateCodeFromCompileUnit(CodeCompileUnit compileUnit, TextWriter writer, CodeGeneratorOptions options);
  public virtual void GenerateCodeFromExpression(CodeExpression expression, TextWriter writer, CodeGeneratorOptions options);
  public virtual void GenerateCodeFromMember(CodeTypeMember member, TextWriter writer, CodeGeneratorOptions options);
  public virtual void GenerateCodeFromNamespace(CodeNamespace codeNamespace, TextWriter writer, CodeGeneratorOptions options);
  public virtual void GenerateCodeFromStatement(CodeStatement statement, TextWriter writer, CodeGeneratorOptions options);
  public virtual void GenerateCodeFromType(CodeTypeDeclaration codeType, TextWriter writer, CodeGeneratorOptions options);
  static public CompilerInfo GetAllCompilerInfo();
  static public CompilerInfo GetCompilerInfo(String language);
  public virtual TypeConverter GetConverter(Type type);
  static public String GetLanguageFromExtension(String extension);
  public virtual String GetTypeOutput(CodeTypeReference type);
  static public Boolean IsDefinedExtension(String extension);
  static public Boolean IsDefinedLanguage(String language);
  public virtual Boolean IsValidIdentifier(String value);
  public virtual CodeCompileUnit Parse(TextReader codeStream);
  public virtual Boolean Supports(GeneratorSupport generatorSupport);

  public abstract class CodeGenerator
  : ICodeGenerator
  protected CodeTypeDeclaration CurrentClass { get; }
  protected CodeTypeMember CurrentMember { get; }
  protected String CurrentMemberName { get; }
  protected String CurrentTypeName { get; }
  protected Int32 Indent { get; set; }
  protected Boolean IsCurrentClass { get; }
  protected Boolean IsCurrentDelegate { get; }
  protected Boolean IsCurrentEnum { get; }
  protected Boolean IsCurrentInterface { get; }
  protected Boolean IsCurrentStruct { get; }
  protected abstract virtual String NullToken { get; }
  protected CodeGeneratorOptions Options { get; }
  protected TextWriter Output { get; }
  protected virtual void ContinueOnNewLine(String st);
  protected abstract virtual String CreateEscapedIdentifier(String value);
  protected abstract virtual String CreateValidIdentifier(String value);
  protected abstract virtual void GenerateArgumentReferenceExpression(CodeArgumentReferenceExpression e);
  protected abstract virtual void GenerateArrayCreateExpression(CodeArrayCreateExpression e);
  protected abstract virtual void GenerateArrayIndexerExpression(CodeArrayIndexerExpression e);
  protected abstract virtual void GenerateAssignStatement(CodeAssignStatement e);
  protected abstract virtual void GenerateAttachEventStatement(CodeAttachEventStatement e);
  protected abstract virtual void GenerateAttributeDeclarationsEnd(CodeAttributeDeclarationCollection attributes);
  protected abstract virtual void GenerateAttributeDeclarationsStart(CodeAttributeDeclarationCollection attributes);
  protected abstract virtual void GenerateBaseReferenceExpression(CodeBaseReferenceExpression e);
  protected virtual void GenerateBinaryOperatorExpression(CodeBinaryOperatorExpression e);
  protected abstract virtual void GenerateCastExpression(CodeCastExpression e);
  public virtual void GenerateCodeFromMember(CodeTypeMember member, TextWriter writer, CodeGeneratorOptions options);
  protected abstract virtual void GenerateComment(CodeComment e);
  protected virtual void GenerateCommentStatement(CodeCommentStatement e);
  protected virtual void GenerateCommentStatements(CodeCommentStatementCollection e);
  protected virtual void GenerateCompileUnit(CodeCompileUnit e);
  protected virtual void GenerateCompileUnitEnd(CodeCompileUnit e);
  protected virtual void GenerateCompileUnitStart(CodeCompileUnit e);
  protected abstract virtual void GenerateConditionStatement(CodeConditionStatement e);
  protected abstract virtual void GenerateConstructor(CodeConstructor e, CodeTypeDeclaration c);
  protected virtual void GenerateDecimalValue(Decimal d);
  protected virtual void GenerateDefaultValueExpression(CodeDefaultValueExpression e);
  protected abstract virtual void GenerateDelegateCreateExpression(CodeDelegateCreateExpression e);
  protected abstract virtual void GenerateDelegateInvokeExpression(CodeDelegateInvokeExpression e);
  protected virtual void GenerateDirectionExpression(CodeDirectionExpression e);
  protected virtual void GenerateDirectives(CodeDirectiveCollection directives);
  protected virtual void GenerateDoubleValue(Double d);
  protected abstract virtual void GenerateEntryPointMethod(CodeEntryPointMethod e, CodeTypeDeclaration c);
  protected abstract virtual void GenerateEvent(CodeMemberEvent e, CodeTypeDeclaration c);
  protected abstract virtual void GenerateEventReferenceExpression(CodeEventReferenceExpression e);
  protected void GenerateExpression(CodeExpression e);
  protected abstract virtual void GenerateExpressionStatement(CodeExpressionStatement e);
  protected abstract virtual void GenerateField(CodeMemberField e);
  protected abstract virtual void GenerateFieldReferenceExpression(CodeFieldReferenceExpression e);
  protected abstract virtual void GenerateGotoStatement(CodeGotoStatement e);
  protected abstract virtual void GenerateIndexerExpression(CodeIndexerExpression e);
  protected abstract virtual void GenerateIterationStatement(CodeIterationStatement e);
  protected abstract virtual void GenerateLabeledStatement(CodeLabeledStatement e);
  protected abstract virtual void GenerateLinePragmaEnd(CodeLinePragma e);
  protected abstract virtual void GenerateLinePragmaStart(CodeLinePragma e);
  protected abstract virtual void GenerateMethod(CodeMemberMethod e, CodeTypeDeclaration c);
  protected abstract virtual void GenerateMethodInvokeExpression(CodeMethodInvokeExpression e);
  protected abstract virtual void GenerateMethodReferenceExpression(CodeMethodReferenceExpression e);
  protected abstract virtual void GenerateMethodReturnStatement(CodeMethodReturnStatement e);
  protected virtual void GenerateNamespace(CodeNamespace e);
  protected abstract virtual void GenerateNamespaceEnd(CodeNamespace e);
  protected abstract virtual void GenerateNamespaceImport(CodeNamespaceImport e);
  protected void GenerateNamespaceImports(CodeNamespace e);
  protected void GenerateNamespaces(CodeCompileUnit e);
  protected abstract virtual void GenerateNamespaceStart(CodeNamespace e);
  protected abstract virtual void GenerateObjectCreateExpression(CodeObjectCreateExpression e);
  protected virtual void GenerateParameterDeclarationExpression(CodeParameterDeclarationExpression e);
  protected virtual void GeneratePrimitiveExpression(CodePrimitiveExpression e);
  protected abstract virtual void GenerateProperty(CodeMemberProperty e, CodeTypeDeclaration c);
  protected abstract virtual void GeneratePropertyReferenceExpression(CodePropertyReferenceExpression e);
  protected abstract virtual void GeneratePropertySetValueReferenceExpression(CodePropertySetValueReferenceExpression e);
  protected abstract virtual void GenerateRemoveEventStatement(CodeRemoveEventStatement e);
  protected virtual void GenerateSingleFloatValue(Single s);
  protected virtual void GenerateSnippetCompileUnit(CodeSnippetCompileUnit e);
  protected abstract virtual void GenerateSnippetExpression(CodeSnippetExpression e);
  protected abstract virtual void GenerateSnippetMember(CodeSnippetTypeMember e);
  protected virtual void GenerateSnippetStatement(CodeSnippetStatement e);
  protected void GenerateStatement(CodeStatement e);
  protected void GenerateStatements(CodeStatementCollection stms);
  protected abstract virtual void GenerateThisReferenceExpression(CodeThisReferenceExpression e);
  protected abstract virtual void GenerateThrowExceptionStatement(CodeThrowExceptionStatement e);
  protected abstract virtual void GenerateTryCatchFinallyStatement(CodeTryCatchFinallyStatement e);
  protected abstract virtual void GenerateTypeConstructor(CodeTypeConstructor e);
  protected abstract virtual void GenerateTypeEnd(CodeTypeDeclaration e);
  protected virtual void GenerateTypeOfExpression(CodeTypeOfExpression e);
  protected virtual void GenerateTypeReferenceExpression(CodeTypeReferenceExpression e);
  protected void GenerateTypes(CodeNamespace e);
  protected abstract virtual void GenerateTypeStart(CodeTypeDeclaration e);
  protected abstract virtual void GenerateVariableDeclarationStatement(CodeVariableDeclarationStatement e);
  protected abstract virtual void GenerateVariableReferenceExpression(CodeVariableReferenceExpression e);
  protected abstract virtual String GetTypeOutput(CodeTypeReference value);
  protected abstract virtual Boolean IsValidIdentifier(String value);
  static public Boolean IsValidLanguageIndependentIdentifier(String value);
  protected virtual void OutputAttributeArgument(CodeAttributeArgument arg);
  protected virtual void OutputAttributeDeclarations(CodeAttributeDeclarationCollection attributes);
  protected virtual void OutputDirection(FieldDirection dir);
  protected virtual void OutputExpressionList(CodeExpressionCollection expressions, Boolean newlineBetweenItems);
  protected virtual void OutputExpressionList(CodeExpressionCollection expressions);
  protected virtual void OutputFieldScopeModifier(MemberAttributes attributes);
  protected virtual void OutputIdentifier(String ident);
  protected virtual void OutputMemberAccessModifier(MemberAttributes attributes);
  protected virtual void OutputMemberScopeModifier(MemberAttributes attributes);
  protected virtual void OutputOperator(CodeBinaryOperatorType op);
  protected virtual void OutputParameters(CodeParameterDeclarationExpressionCollection parameters);
  protected abstract virtual void OutputType(CodeTypeReference typeRef);
  protected virtual void OutputTypeAttributes(TypeAttributes attributes, Boolean isStruct, Boolean isEnum);
  protected virtual void OutputTypeNamePair(CodeTypeReference typeRef, String name);
  protected abstract virtual String QuoteSnippetString(String value);
  protected abstract virtual Boolean Supports(GeneratorSupport support);
  protected virtual void ValidateIdentifier(String value);
  static public void ValidateIdentifiers(CodeObject e);

  public class CodeGeneratorOptions
 
  public Boolean BlankLinesBetweenMembers { get; set; }
  public String BracingStyle { get; set; }
  public Boolean ElseOnClosing { get; set; }
  public String IndentString { get; set; }
  public Object Item { get; set; }
  public Boolean VerbatimOrder { get; set; }

  public abstract class CodeParser
  : ICodeParser
  public abstract virtual CodeCompileUnit Parse(TextReader codeStream);

  public class CompilerError
 
  public Int32 Column { get; set; }
  public String ErrorNumber { get; set; }
  public String ErrorText { get; set; }
  public String FileName { get; set; }
  public Boolean IsWarning { get; set; }
  public Int32 Line { get; set; }
  public virtual String ToString();

  public class CompilerErrorCollection
  : CollectionBase, IList, ICollection, IEnumerable
  public Boolean HasErrors { get; }
  public Boolean HasWarnings { get; }
  public CompilerError Item { get; set; }
  public Int32 Add(CompilerError value);
  public void AddRange(CompilerError value);
  public void AddRange(CompilerErrorCollection value);
  public Boolean Contains(CompilerError value);
  public void CopyTo(CompilerError array, Int32 index);
  public Int32 IndexOf(CompilerError value);
  public void Insert(Int32 index, CompilerError value);
  public void Remove(CompilerError value);

  public sealed class CompilerInfo
 
  public Type CodeDomProviderType { get; }
  public Boolean IsCodeDomProviderTypeValid { get; }
  public CompilerParameters CreateDefaultCompilerParameters();
  public CodeDomProvider CreateProvider(IDictionary`2<String, String> providerOptions);
  public CodeDomProvider CreateProvider();
  public virtual Boolean Equals(Object o);
  public String GetExtensions();
  public virtual Int32 GetHashCode();
  public String GetLanguages();

  public class CompilerParameters
 
  public String CompilerOptions { get; set; }
  public String CoreAssemblyFileName { get; set; }
  public StringCollection EmbeddedResources { get; }
  public Evidence Evidence { get; set; }
  public Boolean GenerateExecutable { get; set; }
  public Boolean GenerateInMemory { get; set; }
  public Boolean IncludeDebugInformation { get; set; }
  public StringCollection LinkedResources { get; }
  public String MainClass { get; set; }
  public String OutputAssembly { get; set; }
  public StringCollection ReferencedAssemblies { get; }
  public TempFileCollection TempFiles { get; set; }
  public Boolean TreatWarningsAsErrors { get; set; }
  public IntPtr UserToken { get; set; }
  public Int32 WarningLevel { get; set; }
  public String Win32Resource { get; set; }

  public class CompilerResults
 
  public Assembly CompiledAssembly { get; set; }
  public CompilerErrorCollection Errors { get; }
  public Evidence Evidence { get; set; }
  public Int32 NativeCompilerReturnValue { get; set; }
  public StringCollection Output { get; }
  public String PathToAssembly { get; set; }
  public TempFileCollection TempFiles { get; set; }

  public abstract sealed class Executor
 
  static public void ExecWait(String cmd, TempFileCollection tempFiles);
  static public Int32 ExecWaitWithCapture(String cmd, TempFileCollection tempFiles, String& outputName, String& errorName);
  static public Int32 ExecWaitWithCapture(String cmd, String currentDir, TempFileCollection tempFiles, String& outputName, String& errorName);
  static public Int32 ExecWaitWithCapture(IntPtr userToken, String cmd, TempFileCollection tempFiles, String& outputName, String& errorName);
  static public Int32 ExecWaitWithCapture(IntPtr userToken, String cmd, String currentDir, TempFileCollection tempFiles, String& outputName, String& errorName);

public sealed class GeneratedCodeAttribute public sealed class GeneratedCodeAttribute
: Attribute, _Attribute : Attribute, _Attribute
public String Tool { get; } public String Tool { get; }
public String Version { get; } public String Version { get; }

  public sealed enum GeneratorSupport
  : IComparable, IFormattable, IConvertible
  { ArraysOfArrays, EntryPointMethod, GotoStatements, MultidimensionalArrays, StaticConstructors, TryCatchStatements, ReturnTypeAttributes, DeclareValueTypes, DeclareEnums, DeclareDelegates, DeclareInterfaces, DeclareEvents, AssemblyAttributes, ParameterAttributes, ReferenceParameters, ChainedConstructorArguments, NestedTypes, MultipleInterfaceMembers, PublicStaticMembers, ComplexExpressions, Win32Resources, Resources, PartialTypes, GenericTypeReference, GenericTypeDeclaration, DeclareIndexerProperties }

  public abstract interface ICodeCompiler
 
  public abstract virtual CompilerResults CompileAssemblyFromDom(CompilerParameters options, CodeCompileUnit compilationUnit);
  public abstract virtual CompilerResults CompileAssemblyFromDomBatch(CompilerParameters options, CodeCompileUnit compilationUnits);
  public abstract virtual CompilerResults CompileAssemblyFromFile(CompilerParameters options, String fileName);
  public abstract virtual CompilerResults CompileAssemblyFromFileBatch(CompilerParameters options, String fileNames);
  public abstract virtual CompilerResults CompileAssemblyFromSource(CompilerParameters options, String source);
  public abstract virtual CompilerResults CompileAssemblyFromSourceBatch(CompilerParameters options, String sources);

  public abstract interface ICodeGenerator
 
  public abstract virtual String CreateEscapedIdentifier(String value);
  public abstract virtual String CreateValidIdentifier(String value);
  public abstract virtual void GenerateCodeFromCompileUnit(CodeCompileUnit e, TextWriter w, CodeGeneratorOptions o);
  public abstract virtual void GenerateCodeFromExpression(CodeExpression e, TextWriter w, CodeGeneratorOptions o);
  public abstract virtual void GenerateCodeFromNamespace(CodeNamespace e, TextWriter w, CodeGeneratorOptions o);
  public abstract virtual void GenerateCodeFromStatement(CodeStatement e, TextWriter w, CodeGeneratorOptions o);
  public abstract virtual void GenerateCodeFromType(CodeTypeDeclaration e, TextWriter w, CodeGeneratorOptions o);
  public abstract virtual String GetTypeOutput(CodeTypeReference type);
  public abstract virtual Boolean IsValidIdentifier(String value);
  public abstract virtual Boolean Supports(GeneratorSupport supports);
  public abstract virtual void ValidateIdentifier(String value);

  public abstract interface ICodeParser
 
  public abstract virtual CodeCompileUnit Parse(TextReader codeStream);

  public class IndentedTextWriter
  : TextWriter, IDisposable
  public virtual Encoding Encoding { get; }
  public Int32 Indent { get; set; }
  public TextWriter InnerWriter { get; }
  public virtual String NewLine { get; set; }
  public virtual void Close();
  public virtual void Flush();
  protected virtual void OutputTabs();
  public virtual void Write(String s);
  public virtual void Write(Boolean value);
  public virtual void Write(Char value);
  public virtual void Write(Char buffer);
  public virtual void Write(Char buffer, Int32 index, Int32 count);
  public virtual void Write(Double value);
  public virtual void Write(Single value);
  public virtual void Write(Int32 value);
  public virtual void Write(Int64 value);
  public virtual void Write(Object value);
  public virtual void Write(String format, Object arg0);
  public virtual void Write(String format, Object arg0, Object arg1);
  public virtual void Write(String format, Object arg);
  public virtual void WriteLine(String s);
  public virtual void WriteLine();
  public virtual void WriteLine(Boolean value);
  public virtual void WriteLine(Char value);
  public virtual void WriteLine(Char buffer);
  public virtual void WriteLine(Char buffer, Int32 index, Int32 count);
  public virtual void WriteLine(Double value);
  public virtual void WriteLine(Single value);
  public virtual void WriteLine(Int32 value);
  public virtual void WriteLine(Int64 value);
  public virtual void WriteLine(Object value);
  public virtual void WriteLine(String format, Object arg0);
  public virtual void WriteLine(String format, Object arg0, Object arg1);
  public virtual void WriteLine(String format, Object arg);
  public virtual void WriteLine(UInt32 value);
  public void WriteLineNoTabs(String s);

  public sealed enum LanguageOptions
  : IComparable, IFormattable, IConvertible
  { None, CaseInsensitive }

  public class TempFileCollection
  : ICollection, IEnumerable, IDisposable
  public String BasePath { get; }
  public Int32 Count { get; }
  public Boolean KeepFiles { get; set; }
  public String TempDir { get; }
  public String AddExtension(String fileExtension);
  public String AddExtension(String fileExtension, Boolean keepFile);
  public void AddFile(String fileName, Boolean keepFile);
  public void CopyTo(String fileNames, Int32 start);
  public void Delete();
  protected virtual void Dispose(Boolean disposing);
  protected virtual void Finalize();
  public IEnumerator GetEnumerator();