@@ -55,7 +55,10 @@ public StringDecorated(string text)
5555 /// Render the decorarted string using automatic output rendering.
5656 /// </summary>
5757 /// <returns>Rendered string based on automatic output rendering.</returns>
58- public override string ToString ( ) => _isDecorated ? ToString ( OutputRendering . Automatic ) : _text ;
58+ public override string ToString ( ) => ToString (
59+ PSStyle . Instance . OutputRendering == OutputRendering . PlainText
60+ ? OutputRendering . PlainText
61+ : OutputRendering . Ansi ) ;
5962
6063 /// <summary>
6164 /// Return string representation of content depending on output rendering mode.
@@ -64,28 +67,17 @@ public StringDecorated(string text)
6467 /// <returns>Rendered string based on outputRendering.</returns>
6568 public string ToString ( OutputRendering outputRendering )
6669 {
67- if ( ! _isDecorated )
70+ if ( outputRendering == OutputRendering . Host )
6871 {
69- return _text ;
72+ throw new ArgumentException ( StringDecoratedStrings . RequireExplicitRendering ) ;
7073 }
7174
72- if ( outputRendering == OutputRendering . Automatic )
73- {
74- outputRendering = OutputRendering . Ansi ;
75- if ( PSStyle . Instance . OutputRendering == OutputRendering . PlainText )
76- {
77- outputRendering = OutputRendering . PlainText ;
78- }
79- }
80-
81- if ( outputRendering == OutputRendering . PlainText )
82- {
83- return PlainText ;
84- }
85- else
75+ if ( ! _isDecorated )
8676 {
8777 return _text ;
8878 }
79+
80+ return outputRendering == OutputRendering . PlainText ? PlainText : _text ;
8981 }
9082 }
9183
@@ -139,7 +131,10 @@ public ValueStringDecorated(string text)
139131 /// Render the decorarted string using automatic output rendering.
140132 /// </summary>
141133 /// <returns>Rendered string based on automatic output rendering.</returns>
142- public override string ToString ( ) => _isDecorated ? ToString ( OutputRendering . Automatic ) : _text ;
134+ public override string ToString ( ) => ToString (
135+ PSStyle . Instance . OutputRendering == OutputRendering . PlainText
136+ ? OutputRendering . PlainText
137+ : OutputRendering . Ansi ) ;
143138
144139 /// <summary>
145140 /// Return string representation of content depending on output rendering mode.
@@ -148,28 +143,17 @@ public ValueStringDecorated(string text)
148143 /// <returns>Rendered string based on outputRendering.</returns>
149144 public string ToString ( OutputRendering outputRendering )
150145 {
151- if ( ! _isDecorated )
146+ if ( outputRendering == OutputRendering . Host )
152147 {
153- return _text ;
148+ throw new ArgumentException ( StringDecoratedStrings . RequireExplicitRendering ) ;
154149 }
155150
156- if ( outputRendering == OutputRendering . Automatic )
157- {
158- outputRendering = OutputRendering . Ansi ;
159- if ( PSStyle . Instance . OutputRendering == OutputRendering . PlainText )
160- {
161- outputRendering = OutputRendering . PlainText ;
162- }
163- }
164-
165- if ( outputRendering == OutputRendering . PlainText )
166- {
167- return PlainText ;
168- }
169- else
151+ if ( ! _isDecorated )
170152 {
171153 return _text ;
172154 }
155+
156+ return outputRendering == OutputRendering . PlainText ? PlainText : _text ;
173157 }
174158 }
175159}
0 commit comments