| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- using System.IO;
- namespace Ryujinx.HLE.HOS.Diagnostics.Demangler.Ast
- {
- public class NewExpression : BaseNode
- {
- private NodeArray _expressions;
- private BaseNode _typeNode;
- private NodeArray _initializers;
- private bool _isGlobal;
- private bool _isArrayExpression;
- public NewExpression(NodeArray expressions, BaseNode typeNode, NodeArray initializers, bool isGlobal, bool isArrayExpression) : base(NodeType.NewExpression)
- {
- _expressions = expressions;
- _typeNode = typeNode;
- _initializers = initializers;
- _isGlobal = isGlobal;
- _isArrayExpression = isArrayExpression;
- }
- public override void PrintLeft(TextWriter writer)
- {
- if (_isGlobal)
- {
- writer.Write("::operator ");
- }
- writer.Write("new ");
- if (_isArrayExpression)
- {
- writer.Write("[] ");
- }
- if (_expressions.Nodes.Count != 0)
- {
- writer.Write("(");
- _expressions.Print(writer);
- writer.Write(")");
- }
- _typeNode.Print(writer);
- if (_initializers.Nodes.Count != 0)
- {
- writer.Write("(");
- _initializers.Print(writer);
- writer.Write(")");
- }
- }
- }
- }
|