Skip to content

Instantly share code, notes, and snippets.

View flovilmart's full-sized avatar
📈

Florent Vilmart flovilmart

📈
View GitHub Profile
@flovilmart
flovilmart / frmwrk.js
Created September 8, 2020 01:17
frmwrk.js
// Makes a sync middleware
const make = (name) => {
return (ctx, next) => {
ctx.calls = ctx.calls || 0
ctx.calls += 1;
console.log(`Doing ${name} PRE`);
return next(ctx);
}
}
@flovilmart
flovilmart / index.ts
Created July 13, 2019 15:20
TS: Optionals
class Optional<T> {
private val: T;
private is_none: boolean;
private constructor(value: T, is_none: boolean = false) {
this.val = value;
this.is_none = is_none;
}
static none<U>(): Optional<U> {
GET /buses/busqueda/2939/19/2019-02-05 HTTP/1.1
Host: api.plataforma10.com
Token: 11028-e014020f-08cb-4946-a34f-5a6a3cc37c34-29012019174038
X-Busbud-Requestid: 20190129210269fa0bab367817ea844b69078de9b8b803c720525e62581ae453e7be75d67153+1548795840582
X-Busbud-Purchaseid: 3449100
X-Busbud-Partnerid: null
Accept: application/json
POST /api/v4/Travel/Availability HTTP/1.1
Host: api.greyhound.travel
Authorization: eyJhbGciOiJSUzI1NiIsImtpZCI6IkVDRTc1QTNCRjAxQUJFQjQ0ODVFMEZEODQ0RjIyMTRENTVGNDlCMEMiLCJ0eXAiOiJKV1QiLCJ4NXQiOiI3T2RhT19BYXZyUklYZ19ZUlBJaFRWWDBtd3cifQ.eyJuYmYiOjE1NDQxOTM2MTQsImV4cCI6MTU0NDIyMzYxNCwiaXNzIjoiaHR0cHM6Ly9hcGkuZ3JleWhvdW5kLnRyYXZlbC9hdXRob3Jpc2F0aW9uIiwiYXVkIjpbImh0dHBzOi8vYXBpLmdyZXlob3VuZC50cmF2ZWwvYXV0aG9yaXNhdGlvbi9yZXNvdXJjZXMiLCIyMDQ5Il0sImNsaWVudF9pZCI6IkJ1c0J1ZCIsImNsaWVudF9JYlVzZXIiOiJCQk5DIiwic2NvcGUiOlsiMjA0OSJdfQ.Cu4LSChVZu_Go3wehc2cNpXRxpAb2PNTL6dSww4v3cKMhRL9G32hXcA4erUVjFzsiWeKexU8TFWJMJaoK181HubQ5T33wDuiM95FcCh0vg00uXoyxW_IvFHxmW2WkweNGpaxPrFwy5VtsY5PPHLTniO9ZsuLKJsJYyA5vmpdFbvPlaP3ESNJVjj2QB4tpR8O4rZFdhJJv7Pi2aPVc3ruw75Zc2SVSALyHkEUC8bfSnmS8yrpy3eQY9cwKRv4r9ZDw7UloW7WxT8rcQN9MHmrJWB0lMscCDgaaUA8a7nH4ZbLRShxMzK1otFRNKNa7cZTkUy0Vkaj-UAk7En52mmHBQ
Content-Type: application/json
X-Busbud-Requestid: 201812071449da925b62e7ce6fdddd784c6dbbbdcfb0db54d569149b8997fa2e02fb904102e6+1544194161273+1343493
X-Bus
POST /api/v4/Travel/Availability HTTP/1.1
Host: api.greyhound.travel
Authorization: eyJhbGciOiJSUzI1NiIsImtpZCI6IkVDRTc1QTNCRjAxQUJFQjQ0ODVFMEZEODQ0RjIyMTRENTVGNDlCMEMiLCJ0eXAiOiJKV1QiLCJ4NXQiOiI3T2RhT19BYXZyUklYZ19ZUlBJaFRWWDBtd3cifQ.eyJuYmYiOjE1NDQxOTM2MTQsImV4cCI6MTU0NDIyMzYxNCwiaXNzIjoiaHR0cHM6Ly9hcGkuZ3JleWhvdW5kLnRyYXZlbC9hdXRob3Jpc2F0aW9uIiwiYXVkIjpbImh0dHBzOi8vYXBpLmdyZXlob3VuZC50cmF2ZWwvYXV0aG9yaXNhdGlvbi9yZXNvdXJjZXMiLCIyMDQ5Il0sImNsaWVudF9pZCI6IkJ1c0J1ZCIsImNsaWVudF9JYlVzZXIiOiJCQk5DIiwic2NvcGUiOlsiMjA0OSJdfQ.Cu4LSChVZu_Go3wehc2cNpXRxpAb2PNTL6dSww4v3cKMhRL9G32hXcA4erUVjFzsiWeKexU8TFWJMJaoK181HubQ5T33wDuiM95FcCh0vg00uXoyxW_IvFHxmW2WkweNGpaxPrFwy5VtsY5PPHLTniO9ZsuLKJsJYyA5vmpdFbvPlaP3ESNJVjj2QB4tpR8O4rZFdhJJv7Pi2aPVc3ruw75Zc2SVSALyHkEUC8bfSnmS8yrpy3eQY9cwKRv4r9ZDw7UloW7WxT8rcQN9MHmrJWB0lMscCDgaaUA8a7nH4ZbLRShxMzK1otFRNKNa7cZTkUy0Vkaj-UAk7En52mmHBQ
Content-Type: application/json
X-Busbud-Requestid: 201812071449da925b62e7ce6fdddd784c6dbbbdcfb0db54d569149b8997fa2e02fb904102e6+1544194161273+1343493
X-Bus
@flovilmart
flovilmart / gist:096f6744a5d87ef267aace3c77099edc
Created December 6, 2018 14:05
Greyhound Australia - low fares
POST /api/v4/Travel/Availability HTTP/1.1
Host: api.greyhound.travel
Authorization: eyJhbGciOiJSUzI1NiIsImtpZCI6IkVDRTc1QTNCRjAxQUJFQjQ0ODVFMEZEODQ0RjIyMTRENTVGNDlCMEMiLCJ0eXAiOiJKV1QiLCJ4NXQiOiI3T2RhT19BYXZyUklYZ19ZUlBJaFRWWDBtd3cifQ.eyJuYmYiOjE1NDQxMDQzODYsImV4cCI6MTU0NDEzNDM4NiwiaXNzIjoiaHR0cHM6Ly9hcGkuZ3JleWhvdW5kLnRyYXZlbC9hdXRob3Jpc2F0aW9uIiwiYXVkIjpbImh0dHBzOi8vYXBpLmdyZXlob3VuZC50cmF2ZWwvYXV0aG9yaXNhdGlvbi9yZXNvdXJjZXMiLCIyMDQ5Il0sImNsaWVudF9pZCI6IkJ1c0J1ZCIsImNsaWVudF9JYlVzZXIiOiJCQk5DIiwic2NvcGUiOlsiMjA0OSJdfQ.dW8-SOwkHoZs_0nMrMacxszvSIw1BI-rFwq-bJszAx3cijTcuPQcdMpBmVyzNv3_vFOvC5u_68eebQA5fH6c7VWT9enYbTeTZpCIxzrmJ-Rba1XHnuBv2Kl0txS27ciOMPQwM1NMedFjVuWe7TamcP1Bmg3jJiCj0HfNklVsxGcuei7AL8IKB_Zm33lCEp8VsqQzjcYZYrzDY8JzhURvge9X_5Trceqft5V4bNBzR4Oq1zf178c9poUvkDr62any_Jo3SNqcfMut7CAMm6LFSWYsGaUGKT62mR0Oo_oYJf-n-XT7bfVzJqfNrEzkP-8WJNQV_azvmMwQA-32Gb4nXA
Content-Type: application/json
X-Busbud-Requestid: 20181206135359eb86a174c379bf313262d5d091692cc6559760e1f0fe279aa96a1ea48aa1a6+1544104400338+1343934
X-Bus
GET /retailers/v4/connections/vacancy?marketing_carrier=GBIO&departure_station=BGVARZOB&arrival_station=BGSOFCBS&departure_time=2018-10-01T11%3A30&arrival_time=2018-10-01T17%3A15&currency=EUR&passengers%5B%5D%5Bpax%5D=1&passengers%5B%5D%5Btype%5D=PNOS HTTP/1.1
Host: api.distribusion.com
Api-Key: 2QMcWJPgloYUC1UjdkpaGzZ3sUX2MHdBRQh1PNo8
X-Busbud-Requestid: 2018092614331414df5d4bb815c4d093248fce396505a8273d64d2237ed6e2f779fb52dcb0ed+1537972431874
X-Busbud-Purchaseid: 2796670
X-Busbud-Partnerid: null
Accept: application/json
{% for type in types.implementing.Buildable %}
extension {{ type.name }} {
class Builder {
{% for member in type.variables %}
private var {{ member.name }}: {{member.typeName}}?
{% endfor %}
{% for member in type.variables %}
func set({{ member.name }}: {{member.typeName}}) -> Builder {
self.{{ member.name }} = {{ member.name }}
$ curl http://localhost:8080/app1
# logs
# main middleware
# app1 middleware
$ curl http://localhost:8080/app2
# logs
# main middleware
# app2 middleware
@flovilmart
flovilmart / Crash
Created April 10, 2017 14:17
iOS 10 only crash
EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x00000009e040bec8
Crashed: main
0 libobjc.A.dylib 0x18b8e97f4 objc_object::release() + 8
1 CoreFoundation 0x18ce5a9a4 common_removeAllObjects + 156
2 CoreFoundation 0x18cd4e9e0 -[__NSArrayM dealloc] + 28
3 libobjc.A.dylib 0x18b8ea134 (anonymous namespace)::AutoreleasePoolPage::pop(void*) + 836
4 CoreFoundation 0x18cd46b18 _CFAutoreleasePoolPop + 28
5 CoreFoundation 0x18ce16ce4 __CFRunLoopRun + 1580
6 CoreFoundation 0x18cd46d94 CFRunLoopRunSpecific + 424