{"action":"created","issue":{"url":"https://api.github.com/repos/pakastin/frzr/issues/37","repository_url":"https://api.github.com/repos/pakastin/frzr","labels_url":"https://api.github.com/repos/pakastin/frzr/issues/37/labels{/name}","comments_url":"https://api.github.com/repos/pakastin/frzr/issues/37/comments","events_url":"https://api.github.com/repos/pakastin/frzr/issues/37/events","html_url":"https://github.com/pakastin/frzr/pull/37","id":173609968,"number":37,"title":"Faster rendering and some cleanup","user":{"login":"maciejhirsz","id":1096222,"avatar_url":"https://avatars.githubusercontent.com/u/1096222?v=3","gravatar_id":"","url":"https://api.github.com/users/maciejhirsz","html_url":"https://github.com/maciejhirsz","followers_url":"https://api.github.com/users/maciejhirsz/followers","following_url":"https://api.github.com/users/maciejhirsz/following{/other_user}","gists_url":"https://api.github.com/users/maciejhirsz/gists{/gist_id}","starred_url":"https://api.github.com/users/maciejhirsz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maciejhirsz/subscriptions","organizations_url":"https://api.github.com/users/maciejhirsz/orgs","repos_url":"https://api.github.com/users/maciejhirsz/repos","events_url":"https://api.github.com/users/maciejhirsz/events{/privacy}","received_events_url":"https://api.github.com/users/maciejhirsz/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-08-27T18:51:15Z","updated_at":"2016-08-27T18:53:08Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/pakastin/frzr/pulls/37","html_url":"https://github.com/pakastin/frzr/pull/37","diff_url":"https://github.com/pakastin/frzr/pull/37.diff","patch_url":"https://github.com/pakastin/frzr/pull/37.patch"},"body":"- Apparently both of us forgot that `Function#bind()` exists, `el.extend` is now a one liner 😛.\r\n- Custom elements and instantiating components via `el()` is now using the `arguments.length` switch to avoid the overhead of `Function#apply()`.\r\n- Simplified attributes mapping a lot by exploiting the `in` operator and collapsing some `if` cases.\r\n- Creating an `el()` with the first child being a number or a string now uses `element.textContent` instead of passing the argument to `mount()`.\r\n- Even with the specialization above included, **total line count dropped by 27** 🎉.\r\n\r\nSame benchmark as before:\r\n\r\n```\r\nBenching FRZR <div> with multiple child nodes\r\n10377ns per iteration (96369 ops/sec)\r\n```\r\n\r\nWhich doesn't actually test the things that really got faster (custom elements and `el(Foo)`). This won't really affect rendering (updating) speed, but the initial render should be faster.\r\n\r\nAlso `el('div', 'Foo')` is now faster than `el('div', { 'textContent': 'Foo' })`."},"comment":{"url":"https://api.github.com/repos/pakastin/frzr/issues/comments/242934290","html_url":"https://github.com/pakastin/frzr/pull/37#issuecomment-242934290","issue_url":"https://api.github.com/repos/pakastin/frzr/issues/37","id":242934290,"user":{"login":"maciejhirsz","id":1096222,"avatar_url":"https://avatars.githubusercontent.com/u/1096222?v=3","gravatar_id":"","url":"https://api.github.com/users/maciejhirsz","html_url":"https://github.com/maciejhirsz","followers_url":"https://api.github.com/users/maciejhirsz/followers","following_url":"https://api.github.com/users/maciejhirsz/following{/other_user}","gists_url":"https://api.github.com/users/maciejhirsz/gists{/gist_id}","starred_url":"https://api.github.com/users/maciejhirsz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maciejhirsz/subscriptions","organizations_url":"https://api.github.com/users/maciejhirsz/orgs","repos_url":"https://api.github.com/users/maciejhirsz/repos","events_url":"https://api.github.com/users/maciejhirsz/events{/privacy}","received_events_url":"https://api.github.com/users/maciejhirsz/received_events","type":"User","site_admin":false},"created_at":"2016-08-27T18:53:08Z","updated_at":"2016-08-27T18:53:08Z","body":"And I keep forgetting to reference #35 :)"}}
{"actor":{"display_login":"maciejhirsz"}}