/
krasninja
/
querycat
Обзор
Документация
Войти
/
krasninja
/
querycat
Код
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/QueryCat.Backend/Ast/Nodes/CaseWhenThenNode.cs
39 строк
1 KB
Ivan Kozhin
Make most of AST classes internal
04 дек 2023, 19:35
04 дек 2023, 19:35
7aa397b
Код
Авторство
О чём код?
namespace QueryCat.Backend.Ast.Nodes; internal sealed class CaseWhenThenNode : AstNode { public ExpressionNode ConditionNode { get; } public ExpressionNode ResultNode { get; } /// <inheritdoc /> public override string Code => "case_when"; /// <inheritdoc /> public CaseWhenThenNode(ExpressionNode conditionNode, ExpressionNode resultNode) { ConditionNode = conditionNode; ResultNode = resultNode; } public CaseWhenThenNode(CaseWhenThenNode thenNode) : this( (ExpressionNode)thenNode.ConditionNode.Clone(), (ExpressionNode)thenNode.ResultNode.Clone()) { thenNode.CopyTo(this); } /// <inheritdoc /> public override IEnumerable<IAstNode> GetChildren() { yield return ConditionNode; yield return ResultNode; } /// <inheritdoc /> public override object Clone() => new CaseWhenThenNode(this); /// <inheritdoc /> public override void Accept(AstVisitor visitor) => visitor.Visit(this); }