{"push_id":1367566332,"size":2,"distinct_size":2,"ref":"refs/heads/master","head":"b536f80fa27d09b161993bd500e0654c154e94d3","before":"57f10de03e743b12ed1fc34e15a01ee20048da01","commits":[{"sha":"f9fbe3dd28f1bc207fdb7517b2c6666789dfa9e2","author":{"name":"Isaac Polloni","email":"5808448a8a832d6fff1bb515591bd36d10209ab5@outlook.com"},"message":"Update makefile header dependencies","distinct":true,"url":"https://api.github.com/repos/isapol/kernel/commits/f9fbe3dd28f1bc207fdb7517b2c6666789dfa9e2"},{"sha":"b536f80fa27d09b161993bd500e0654c154e94d3","author":{"name":"Isaac Polloni","email":"5808448a8a832d6fff1bb515591bd36d10209ab5@outlook.com"},"message":"Add doubly-linked list type and associated functions\n\nThe list can be used with any struct by having one or more\nmembers of said struct be of type struct dlist_node:\n\nstruct list_entry {\n\tint               foo;\n\tconst char        *bar;\n\tstruct dlist_node list;\n};\n\nAnd then using the dlist functions on said node:\n\nstruct list_entry e1, e2;\n// ...\ndlist_insert_before(&e2.list, &e1.list);\n\nUse CONTAINER_OF (also new in kutil.h) to cast the list\nmember out to the containing struct. This is used to get\nthe next item of the list via the list member:\n\nstruct list_entry *entry = ...;\nstruct list_entry *next = CONTAINER_OF(entru->list.next,\n\tstruct list_entry, list);","distinct":true,"url":"https://api.github.com/repos/isapol/kernel/commits/b536f80fa27d09b161993bd500e0654c154e94d3"}]}
{"actor":{"display_login":"isapol"}}