e79aa3c0ed
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
87 lines
3.4 KiB
C#
87 lines
3.4 KiB
C#
//------------------------------------------------------------------------------
|
|
// <copyright file="ICodeCompiler.cs" company="Microsoft">
|
|
//
|
|
// <OWNER>petes</OWNER>
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
// </copyright>
|
|
//------------------------------------------------------------------------------
|
|
|
|
namespace System.CodeDom.Compiler {
|
|
|
|
using System.Diagnostics;
|
|
using System.IO;
|
|
using System.Security.Permissions;
|
|
|
|
/// <devdoc>
|
|
/// <para>
|
|
/// Provides a
|
|
/// code compilation
|
|
/// interface.
|
|
/// </para>
|
|
/// </devdoc>
|
|
public interface ICodeCompiler {
|
|
|
|
/// <devdoc>
|
|
/// <para>
|
|
/// Creates an assembly based on options, with the information from the compile units
|
|
/// </para>
|
|
/// </devdoc>
|
|
[PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")]
|
|
[PermissionSet(SecurityAction.InheritanceDemand, Name="FullTrust")]
|
|
CompilerResults CompileAssemblyFromDom(CompilerParameters options, CodeCompileUnit compilationUnit);
|
|
|
|
/// <devdoc>
|
|
/// <para>
|
|
/// Creates an assembly based on options, with the contents of
|
|
/// fileName.
|
|
/// </para>
|
|
/// </devdoc>
|
|
[PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")]
|
|
[PermissionSet(SecurityAction.InheritanceDemand, Name="FullTrust")]
|
|
CompilerResults CompileAssemblyFromFile(CompilerParameters options, string fileName);
|
|
|
|
/// <devdoc>
|
|
/// <para>
|
|
/// Creates an assembly based on options, with the information from
|
|
/// source.
|
|
/// </para>
|
|
/// </devdoc>
|
|
[PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")]
|
|
[PermissionSet(SecurityAction.InheritanceDemand, Name="FullTrust")]
|
|
CompilerResults CompileAssemblyFromSource(CompilerParameters options, string source);
|
|
|
|
/// <devdoc>
|
|
/// <para>
|
|
/// Compiles an assembly based on the specified options and
|
|
/// information.
|
|
/// </para>
|
|
/// </devdoc>
|
|
[PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")]
|
|
[PermissionSet(SecurityAction.InheritanceDemand, Name="FullTrust")]
|
|
CompilerResults CompileAssemblyFromDomBatch(CompilerParameters options, CodeCompileUnit[] compilationUnits);
|
|
|
|
/// <devdoc>
|
|
/// <para>
|
|
/// Compiles
|
|
/// an
|
|
/// assembly based on the specified options and contents of the specified
|
|
/// filenames.
|
|
/// </para>
|
|
/// </devdoc>
|
|
[PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")]
|
|
[PermissionSet(SecurityAction.InheritanceDemand, Name="FullTrust")]
|
|
CompilerResults CompileAssemblyFromFileBatch(CompilerParameters options, string[] fileNames);
|
|
|
|
/// <devdoc>
|
|
/// <para>
|
|
/// Compiles an assembly based on the specified options and information from the specified
|
|
/// sources.
|
|
/// </para>
|
|
/// </devdoc>
|
|
[PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")]
|
|
[PermissionSet(SecurityAction.InheritanceDemand, Name="FullTrust")]
|
|
CompilerResults CompileAssemblyFromSourceBatch(CompilerParameters options, string[] sources);
|
|
|
|
}
|
|
}
|