aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS/Diagnostics/Demangler/Ast/ConditionalExpression.cs
blob: 17ac7c1a205869d05952ee5fe1150d910b302925 (plain) (blame)
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
using System.IO;

namespace Ryujinx.HLE.HOS.Diagnostics.Demangler.Ast
{
    public class ConditionalExpression : BaseNode
    {
        private BaseNode ThenNode;
        private BaseNode ElseNode;
        private BaseNode ConditionNode;

        public ConditionalExpression(BaseNode ConditionNode, BaseNode ThenNode, BaseNode ElseNode) : base(NodeType.ConditionalExpression)
        {
            this.ThenNode      = ThenNode;
            this.ConditionNode = ConditionNode;
            this.ElseNode      = ElseNode;
        }

        public override void PrintLeft(TextWriter Writer)
        {
            Writer.Write("(");
            ConditionNode.Print(Writer);
            Writer.Write(") ? (");
            ThenNode.Print(Writer);
            Writer.Write(") : (");
            ElseNode.Print(Writer);
            Writer.Write(")");
        }
    }
}