remove not callable for char[]

Steven Schveighoffer schveiguy at yahoo.com
Tue Jun 12 14:08:25 UTC 2018


On 6/12/18 2:33 AM, Flaze07 wrote:
> well, not really, it just cannot auto deduce, the problem is, I don't 
> know what to put in, I know that I can put in SwapStrategy.stable for 
> the first one, but what about the Range, I don't know what to put in
> E.g
> int[] i = [ 1, 2 ];
> i = i.remove( 1 );//able to automagically deduce
> 
> char[] c = [ 'a', 'b' ];
> c = c.remove( 1 ); //unable to deduce what char[] is in range

The issue is that char[] is treated as an auto-decoding bi-directional 
range by Phobos, not an array.

To get Phobos to behave, you can use byCodeUnit:

import std.utf: byCodeUnit;

c = c.byCodeUnit.remove(1).source;

-Steve


More information about the Digitalmars-d-learn mailing list