Hash.keys

Returns all the keys in the hash which have a non null value.

class Hash(K, V)
pure nothrow
K[]
keys
()

Examples

{
    immutable data = ["foo": 1];
    immutable subject = new immutable(Hash!(string, int))(data);
    assert(subject.keys[0] == "foo");
    assert(subject.keys.length == 1);
}

{
    immutable data = ["foo": 1];
    immutable subject = new immutable(Hash!(string, int))(data)
      .insert("bar", 2);
    assert(subject.keys[0] == "bar");
    assert(subject.keys[1] == "foo");
}

{
    immutable data = ["foo": 1];
    immutable subject = new immutable(Hash!(string, int))(data)
      .insert("bar", 2)
      .remove("bar");
    assert(subject.keys[0] == "foo");
    assert(subject.keys.length == 1);
}

{
    immutable data = ["foo": 1];
    immutable subject = new immutable(Hash!(string, int))(data)
      .insert("bar", 2)
      .remove("foo");
    assert(subject.keys[0] == "bar");
    assert(subject.keys.length == 1);
}

{
    immutable data = ["foo": 1];
    immutable subject = new immutable(Hash!(string, int))(data)
      .insert("foo", 2);
    assert(subject.keys[0] == "foo");
    assert(subject.keys.length == 1);
}

Meta