www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 17818] New: Deprecation: std.container.array.RangeT(A) is not


          Issue ID: 17818
           Summary: Deprecation: std.container.array.RangeT(A) is not
           Product: D
           Version: D2
          Hardware: x86
                OS: Windows
            Status: NEW
          Severity: blocker
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: vino.bheeman hotmail.com


 A function of type "Tuple!(RangeT!(Array!string), RangeT!(Array!ulong))
coSizeDirList" is throwing deprecation warning, this is critical function of
our main function (finding size of sub folders) of 5 file system each with 10
-20 TB, this is the first test that we are using D and testing D functionality
for our feature development on cloud computing on a very large server farm. ,
and we have designed using threads and parallelism for compute speed.

Size.d(10): Deprecation: std.container.array.RangeT(A) is not visible from
module Size

Tuple!(RangeT!(Array!string), RangeT!(Array!ulong)) coSizeDirList () {
    string FFs = "C:\\Temp\\sapnas2\\BACKUP";
    int SizeDir = 1;
    ulong subdirTotal;
    ulong subdirTotalGB;
    Array!(string) Subdir;
    Array!(ulong) Subsize;
    Tuple!((Array!string), (Array!string)) Result;
    auto dFiles = Array!string ((dirEntries(FFs, SpanMode.shallow).filter!(a =>
a.isDir))[].map!(a => a.name));
    foreach (d; dFiles[]) {
                auto SdFiles = Array!ulong(dirEntries(d, SpanMode.depth).map!(a
=> a.size));
                foreach(f; SdFiles[]) { subdirTotal += f; }
                subdirTotalGB = (subdirTotal/1024/1024); { Subdir ~= d; Subsize
~= subdirTotalGB; }
                if (subdirTotalGB > SizeDir)
                subdirTotal = 0;
            return tuple (Subdir[], Subsize[]);


void main () {

Sep 09 2017