BracedRangeExpression.cs 1011 B

12345678910111213141516171819202122232425262728293031323334
  1. using System.IO;
  2. namespace Ryujinx.HLE.HOS.Diagnostics.Demangler.Ast
  3. {
  4. public class BracedRangeExpression : BaseNode
  5. {
  6. private BaseNode _firstNode;
  7. private BaseNode _lastNode;
  8. private BaseNode _expression;
  9. public BracedRangeExpression(BaseNode firstNode, BaseNode lastNode, BaseNode expression) : base(NodeType.BracedRangeExpression)
  10. {
  11. _firstNode = firstNode;
  12. _lastNode = lastNode;
  13. _expression = expression;
  14. }
  15. public override void PrintLeft(TextWriter writer)
  16. {
  17. writer.Write("[");
  18. _firstNode.Print(writer);
  19. writer.Write(" ... ");
  20. _lastNode.Print(writer);
  21. writer.Write("]");
  22. if (!_expression.GetType().Equals(NodeType.BracedExpression) || !_expression.GetType().Equals(NodeType.BracedRangeExpression))
  23. {
  24. writer.Write(" = ");
  25. }
  26. _expression.Print(writer);
  27. }
  28. }
  29. }