2
const nsIVariant = Components.interfaces.nsIVariant;
3
const nsIProperty = Components.interfaces.nsIProperty;
5
const TestVariant = Components.Constructor("@mozilla.org/js/xpc/test/TestVariant;1",
8
var tv = new TestVariant;
10
var obj = {foo : "fooString",
15
bignum : 1.2345678901234567890,
16
now : new Date().toString() };
19
print(tv.getNamedProperty(obj, "foo"));
20
print(tv.getNamedProperty(obj, "five"));
21
print(tv.getNamedProperty(obj, "bar"));
22
print(tv.getNamedProperty(obj, 6));
23
print(tv.getNamedProperty(obj, "fun"));
24
print(tv.getNamedProperty(obj, "fun"));
25
print(tv.getNamedProperty(obj, "bignum"));
26
print(tv.getNamedProperty(obj, "now"));
29
var e = tv.getEnumerator(obj);
31
while(e.hasMoreElements()) {
32
var prop = e.getNext().QueryInterface(nsIProperty)
33
print(prop.name+" = "+prop.value);