std.algorithm.canFind behavior difference between arrays and elements

Arun Chandrasekaran aruncxy at gmail.com
Fri Dec 7 18:51:27 UTC 2018


I'm trying to find the needle in the hay that's an array of 
strings. So the second assert fails for some reason. Is this 
expected? https://run.dlang.io/is/7OrZTA

```
#!/usr/bin/rdmd

void main()
{
     import std.experimental.all;
     string s1 = "aaa111aaa";
     string s2 = "aaa222aaa";
     string s3 = "aaa333aaa";
     string s4 = "aaa444aaa";
     const hay = [s1, s2, s3, s4];
     assert(canFind(s1, "111"));
     assert(canFind(hay, "111"));
}
```

Why is there a difference in the behavior?


More information about the Digitalmars-d-learn mailing list