mwapi_responses_derive 0.5.1

Automatically generate strict types for MediaWiki API responses (macro)
Documentation
{
  "name": "query+revisions",
  "mode": "prop",
  "fieldname": "revisions",
  "prop": "rvprop",
  "wrap_in_vec": true,
  "fields": [
    {
      "name": "revid",
      "type_": "u64",
      "prop": "ids"
    },
    {
      "name": "parentid",
      "type_": "u64",
      "prop": "ids"
    },
    {
      "name": "minor",
      "type_": "bool",
      "default": true,
      "prop": "flags"
    },
    {
      "name": "timestamp",
      "type_": "::mwapi_responses::mwtimestamp::Timestamp",
      "prop": "timestamp"
    },
    {
      "name": "userhidden",
      "type_": "bool",
      "default": true,
      "prop": "user||userid"
    },
    {
      "name": "user",
      "type_": "Option<String>",
      "prop": "user"
    },
    {
      "name": "anon",
      "type_": "bool",
      "default": true,
      "prop": "user||userid"
    },
    {
      "name": "userid",
      "type_": "Option<u32>",
      "prop": "userid"
    },
    {
      "name": "size",
      "type_": "u32",
      "prop": "size"
    },
    {
      "name": "sha1",
      "type_": "String",
      "prop": "sha1"
    },
    {
      "name": "comment",
      "type_": "Option<String>",
      "prop": "comment"
    },
    {
      "name": "commenthidden",
      "type_": "bool",
      "default": true,
      "prop": "comment||parsedcomment"
    },
    {
      "name": "parsedcomment",
      "type_": "Option<String>",
      "prop": "parsedcomment"
    },
    {
      "name": "tags",
      "type_": "Vec<String>",
      "prop": "tags"
    },
    {
      "name": "roles",
      "type_": "Vec<String>",
      "prop": "roles"
    }
  ],
  "test_extra": {
    "assert": {
      "continue": false,
      "length": 3
    },
    "params": {
      "titles": "Taylor Swift|Talk:Taylor Swift|This article does not exist, please"
    }
  }
}