On Sunday, 24 June 2018 at 21:28:06 UTC, aliak wrote:
On Sunday, 24 June 2018 at 20:33:32 UTC, Rudy Raab wrote:
So I have an XLSX (MS Excel 2007+ file format) library that I
wrote (https://github.com/TransientResponse/dlang-xlsx) that
I recently converted from std.xml to dxml. That went well and
it still works (much faster too).
[...]
I think it's the isSomeChar!(ElementType!R), not the
isRandomAccessRange (because string isSomeString and
!isSomeChar)?
Cheers,
- Ali
Changing it to isSomeString!(ElementType!R) moves the error to my
empty() function:
```
source\xlsx.d(205,22): Error: template std.range.primitives.empty
cannot deduce function from argument types
!()(XLSheet!(string[])), candidates are:
C:\D\dmd2\windows\bin\..\..\src\phobos\std\range\primitives.d(2090,16):
std.range.primitives.empty(T)(auto ref scope const(T) a) if
(is(typeof(a.length) : size_t) || isNarrowString!T)
```
I tried implementing a length() function (the number of rows
remaining in the range, which is known at runtime), but the error
remains.