dynamic get from variantArray() data table

data pulverizer via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Tue Oct 13 08:17:13 PDT 2015


Hi,

I am trying to use variantArray() as a data table object to hold 
columns each of which is an array of a specific type. I need to 
be able to get values from data table but I am having problems ...


import std.stdio; // i/o
import std.variant; // type variations

void main(){
   // Columns of the table
   string[] names = ["walter", "paul", "jeff", "andrie"];
   int[] age = [55, 62, 27, 52];
   string[] language = ["D", "Haskell", "Julia", "D"];
   Variant[] dt = variantArray(names, age, language);

   foreach(col; dt){
     foreach(el; col){
       // here I try a kind of dynamic cast operator
       auto x = el.get!(type(el)); // gives error
       write(x);
     }
     write("\n");
   }
}

data_table.d(37): Error: cannot infer type for el
data_table.d(38): Error: undefined identifier 'el'

Help

DP



More information about the Digitalmars-d-learn mailing list