/
DbConstantExpression.cs
46 lines (39 loc) · 1.19 KB
/
DbConstantExpression.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
using System;
namespace DevZest.Data.Primitives
{
/// <summary>
/// Represents a database constant expression.
/// </summary>
public sealed class DbConstantExpression : DbExpression
{
internal static DbConstantExpression Null = new DbConstantExpression(typeof(object), null, null);
internal DbConstantExpression(Column column, object value)
: this(column.DataType, column, value)
{
}
private DbConstantExpression(Type dataType, Column column, object value)
: base(dataType)
{
Column = column;
Value = value;
}
/// <summary>
/// Gets the expression column.
/// </summary>
public Column Column { get; private set; }
/// <summary>
/// Gets the constant value.
/// </summary>
public object Value { get; private set; }
/// <inheritdoc />
public override void Accept(DbExpressionVisitor visitor)
{
visitor.Visit(this);
}
/// <inheritdoc />
public override T Accept<T>(DbExpressionVisitor<T> visitor)
{
return visitor.Visit(this);
}
}
}