Fantastic, Thanks Chad! On Saturday, May 17, 2014 7:47:55 AM UTC+1, Chad Austin wrote: > > When the linked pull request is merged, you will be able to call > val::typeof(), which returns another val. You probably want to write > val::typeof().as<std::string>() most of the time. > > https://github.com/kripken/emscripten/pull/2360 > > Cheers, > Chad > > > > On Thu, May 15, 2014 at 11:19 AM, Chad Austin <[email protected]<javascript:> > > wrote: > >> On Thu, May 15, 2014 at 4:41 AM, Lee Morgan >> <[email protected]<javascript:> >> > wrote: >> >>> Hi Chad, >>> >>> Thanks for your answer. >>> >>> Say I want to convert a JS value to my C++ variant type, so if string, >>> cast string if number cast float, if array iterate etc >>> >>> (I'm trying to store a JS object as c++ map) >>> >> >> I see, cool. >> >> When I get home to my Ubuntu VM where I do emscripten development, I'll >> try to expose the 'typeof' operator to emval. >> >> Just so you're aware, here are the semantics of the JS typeof operator: >> https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/typeof >> >> >>> Cheers >>> Lee >>> >>> On Thursday, May 15, 2014 7:04:33 AM UTC+1, Chad Austin wrote: >>> >>>> On Tue, May 13, 2014 at 3:37 AM, Lee Morgan <[email protected]>wrote: >>>> >>>>> Hi, >>>>> >>>>> Can I access the object keys given an emscripten::val. >>>>> >>>> >>>> Hi Lee, >>>> >>>> That's a good question. Here's one way: >>>> >>>> #include <stdio.h> >>>> #include <emscripten/val.h> >>>> >>>> using emscripten::val; >>>> >>>> int main() { >>>> val window = val::global("window"); >>>> val keys = val::global("Object").call<val>("keys", window); >>>> int length = keys["length"].as<int>(); >>>> for (int i = 0; i < length; ++i) { >>>> printf("%s\n", keys[i].as<std::string>().c_str()); >>>> } >>>> } >>>> >>>> The example program looks up the global 'window' object and then prints >>>> out all of the keys. >>>> >>>> >>>>> How do I get type information about a val? or an array length etc >>>>> >>>> >>>> The above example illustrates getting array length, but I don't think >>>> there's a typeof operator exposed yet. >>>> >>>> In particular, what kind of type information do you need? >>>> >>>> Thanks, >>>> Chad >>>> >>>> -- >>> You received this message because you are subscribed to the Google >>> Groups "emscripten-discuss" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]<javascript:> >>> . >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> >> >> -- >> Chad Austin >> Technical Director, IMVU >> http://engineering.imvu.com <http://www.imvu.com/members/Chad/> >> http://chadaustin.me >> >> >> > > > -- > Chad Austin > Technical Director, IMVU > http://engineering.imvu.com <http://www.imvu.com/members/Chad/> > http://chadaustin.me > > >
-- You received this message because you are subscribed to the Google Groups "emscripten-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
