12c593315Sopenharmony_ci#!/usr/bin/env python3 22c593315Sopenharmony_cifrom io import StringIO 32c593315Sopenharmony_ci 42c593315Sopenharmony_cifrom gentokenlookup import gentokenlookup 52c593315Sopenharmony_ci 62c593315Sopenharmony_ci# copied from llhttp.h, and stripped trailing spaces and backslashes. 72c593315Sopenharmony_ciSRC = ''' 82c593315Sopenharmony_ci XX(0, DELETE, DELETE) 92c593315Sopenharmony_ci XX(1, GET, GET) 102c593315Sopenharmony_ci XX(2, HEAD, HEAD) 112c593315Sopenharmony_ci XX(3, POST, POST) 122c593315Sopenharmony_ci XX(4, PUT, PUT) 132c593315Sopenharmony_ci XX(5, CONNECT, CONNECT) 142c593315Sopenharmony_ci XX(6, OPTIONS, OPTIONS) 152c593315Sopenharmony_ci XX(7, TRACE, TRACE) 162c593315Sopenharmony_ci XX(8, COPY, COPY) 172c593315Sopenharmony_ci XX(9, LOCK, LOCK) 182c593315Sopenharmony_ci XX(10, MKCOL, MKCOL) 192c593315Sopenharmony_ci XX(11, MOVE, MOVE) 202c593315Sopenharmony_ci XX(12, PROPFIND, PROPFIND) 212c593315Sopenharmony_ci XX(13, PROPPATCH, PROPPATCH) 222c593315Sopenharmony_ci XX(14, SEARCH, SEARCH) 232c593315Sopenharmony_ci XX(15, UNLOCK, UNLOCK) 242c593315Sopenharmony_ci XX(16, BIND, BIND) 252c593315Sopenharmony_ci XX(17, REBIND, REBIND) 262c593315Sopenharmony_ci XX(18, UNBIND, UNBIND) 272c593315Sopenharmony_ci XX(19, ACL, ACL) 282c593315Sopenharmony_ci XX(20, REPORT, REPORT) 292c593315Sopenharmony_ci XX(21, MKACTIVITY, MKACTIVITY) 302c593315Sopenharmony_ci XX(22, CHECKOUT, CHECKOUT) 312c593315Sopenharmony_ci XX(23, MERGE, MERGE) 322c593315Sopenharmony_ci XX(24, MSEARCH, M-SEARCH) 332c593315Sopenharmony_ci XX(25, NOTIFY, NOTIFY) 342c593315Sopenharmony_ci XX(26, SUBSCRIBE, SUBSCRIBE) 352c593315Sopenharmony_ci XX(27, UNSUBSCRIBE, UNSUBSCRIBE) 362c593315Sopenharmony_ci XX(28, PATCH, PATCH) 372c593315Sopenharmony_ci XX(29, PURGE, PURGE) 382c593315Sopenharmony_ci XX(30, MKCALENDAR, MKCALENDAR) 392c593315Sopenharmony_ci XX(31, LINK, LINK) 402c593315Sopenharmony_ci XX(32, UNLINK, UNLINK) 412c593315Sopenharmony_ci XX(33, SOURCE, SOURCE) 422c593315Sopenharmony_ci''' 432c593315Sopenharmony_ci 442c593315Sopenharmony_ciif __name__ == '__main__': 452c593315Sopenharmony_ci methods = [] 462c593315Sopenharmony_ci for line in StringIO(SRC): 472c593315Sopenharmony_ci line = line.strip() 482c593315Sopenharmony_ci if not line.startswith('XX'): 492c593315Sopenharmony_ci continue 502c593315Sopenharmony_ci _, m, _ = line.split(',', 2) 512c593315Sopenharmony_ci methods.append(m.strip()) 522c593315Sopenharmony_ci gentokenlookup(methods, 'HTTP_') 53