@@ -83,6 +83,9 @@ private abstract class BooleanObjectInternal extends ConstantObjectInternal {
8383 none ( )
8484 }
8585
86+ /* Booleans aren't iterable */
87+ override ObjectInternal getIterNext ( ) { none ( ) }
88+
8689}
8790
8891private class TrueObjectInternal extends BooleanObjectInternal , TTrue {
@@ -165,6 +168,9 @@ private class NoneObjectInternal extends ConstantObjectInternal, TNone {
165168
166169 override int length ( ) { none ( ) }
167170
171+ /* None isn't iterable */
172+ override ObjectInternal getIterNext ( ) { none ( ) }
173+
168174}
169175
170176
@@ -203,6 +209,9 @@ private class IntObjectInternal extends ConstantObjectInternal, TInt {
203209
204210 override int length ( ) { none ( ) }
205211
212+ /* ints aren't iterable */
213+ override ObjectInternal getIterNext ( ) { none ( ) }
214+
206215}
207216
208217private class FloatObjectInternal extends ConstantObjectInternal , TFloat {
@@ -248,6 +257,9 @@ private class FloatObjectInternal extends ConstantObjectInternal, TFloat {
248257
249258 override int length ( ) { none ( ) }
250259
260+ /* floats aren't iterable */
261+ override ObjectInternal getIterNext ( ) { none ( ) }
262+
251263}
252264
253265
@@ -290,6 +302,10 @@ private class UnicodeObjectInternal extends ConstantObjectInternal, TUnicode {
290302 result = this .strValue ( ) .length ( )
291303 }
292304
305+ override ObjectInternal getIterNext ( ) {
306+ result = TUnknownInstance ( this .getClass ( ) )
307+ }
308+
293309}
294310
295311private class BytesObjectInternal extends ConstantObjectInternal , TBytes {
@@ -331,6 +347,10 @@ private class BytesObjectInternal extends ConstantObjectInternal, TBytes {
331347 result = this .strValue ( ) .length ( )
332348 }
333349
350+ override ObjectInternal getIterNext ( ) {
351+ result = TUnknownInstance ( this .getClass ( ) )
352+ }
353+
334354}
335355
336356
0 commit comments