using System;
namespace AnticipatingMinds.Genesis.CodeDOM{
/// <summary>
/// Represents using statement.
/// </summary>
/// <remarks>ECMA 334 - p. 200, line 38.</remarks>
[Serializable()]
public class CodeUsingStatement : CodeEmbeddedStatement
{
#region Instance constructors
/// <summary>
/// Initializes new instance of the <see cref="CodeUsingStatement"/> class.
/// </summary>
public CodeUsingStatement()
{
}
/// <summary>
/// Initializes new instance of the <see cref="CodeUsingStatement"/> class.
/// </summary>
/// <param name="resourceAquisition">An expression that aquires disposable resource.</param>
public CodeUsingStatement(CodeStatement resourceAquisition)
{
expression = resourceAquisition;
}
#endregion Instance constructors
#region Public instance properties
/// <summary>
/// Using statements block
/// </summary>
public CodeEmbeddedStatement Statement
{
get
{
return statement;
}
set
{
statement = value;
}
}
/// <summary>
/// Gets or sets using resource-acquisition statement.
/// </summary>
/// <remarks>resource-acquisition can be either a local variable declaration or an expression.</remarks>
public CodeStatement ResourceAquisition
{
get
{
return expression;
}
set
{
expression = value;
}
}
#endregion Public instance properties
#region Private instance fields
private CodeEmbeddedStatement statement;
private CodeStatement expression;
#endregion Private instance fields
}
}
|