In the following code, I want to process an json array (returned by the value of "posts") that might or might not have "com" key. If a "com" key does not exist, I want to ignore that item in the json array.

        uint[string] wordTable;

        const auto j = parseJSON(get(link));
        foreach (node; j["posts"].array()) {
                import std.stdio : writeln;
                import std.utf : decode;

                import std.algorithm: splitter;
foreach(word; getStr(node["com"].str()).splitter(' ')) { // here!
                        if (word != "") wordTable.require(word, 0)++;
                }
        }

Now in the above inner loop getStr(node["com"].str()) crashes in runtime if an array does not contain "com" node. I want to avoid that. How should I proceed?

Reply via email to