// function: func(S uri, SS params) -> NanoHTTPD.Response or string static MyHTTPD serveHttpFromWebServable(int port, WebServable webServable) ctex { assertNotNull(+webServable); MyHTTPD server = new(port); server.serveFunction = func(S uri, SS params) { var session = nanoHTTPDCurrentSession(); var req = new WebRequest(session, uri, params); ret webServable.html(req); }; server.start(); print("HTTP port " + port + " open exposing " + webServable); ret server; }