{"action":"created","issue":{"url":"https://api.github.com/repos/AutoMapper/AutoMapper/issues/1346","repository_url":"https://api.github.com/repos/AutoMapper/AutoMapper","labels_url":"https://api.github.com/repos/AutoMapper/AutoMapper/issues/1346/labels{/name}","comments_url":"https://api.github.com/repos/AutoMapper/AutoMapper/issues/1346/comments","events_url":"https://api.github.com/repos/AutoMapper/AutoMapper/issues/1346/events","html_url":"https://github.com/AutoMapper/AutoMapper/pull/1346","id":161053772,"number":1346,"title":"[WIP] Compile method in class instead of general expression.","user":{"login":"TylerCarlson1","id":6801536,"avatar_url":"https://avatars.githubusercontent.com/u/6801536?v=3","gravatar_id":"","url":"https://api.github.com/users/TylerCarlson1","html_url":"https://github.com/TylerCarlson1","followers_url":"https://api.github.com/users/TylerCarlson1/followers","following_url":"https://api.github.com/users/TylerCarlson1/following{/other_user}","gists_url":"https://api.github.com/users/TylerCarlson1/gists{/gist_id}","starred_url":"https://api.github.com/users/TylerCarlson1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TylerCarlson1/subscriptions","organizations_url":"https://api.github.com/users/TylerCarlson1/orgs","repos_url":"https://api.github.com/users/TylerCarlson1/repos","events_url":"https://api.github.com/users/TylerCarlson1/events{/privacy}","received_events_url":"https://api.github.com/users/TylerCarlson1/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":42,"created_at":"2016-06-19T02:55:11Z","updated_at":"2016-06-23T00:57:55Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/AutoMapper/AutoMapper/pulls/1346","html_url":"https://github.com/AutoMapper/AutoMapper/pull/1346","diff_url":"https://github.com/AutoMapper/AutoMapper/pull/1346.diff","patch_url":"https://github.com/AutoMapper/AutoMapper/pull/1346.patch"},"body":"Got 50% performance gain from benchmarks the problem is that you have to make things public to get it to work.\r\nI also took everything out of the map like generating type maps and resolution contexts, and before/aftermap and a lot of other things and got native code level speeds.  Without this I got 5-6x slower, so this looks to be \"The Gold Standard\" for compiling expressions.\r\n\r\nOnly problem is everything has to be public that you call, since you are making a new class object to run the code.  Also constants can't be used they have to be generated.  So a lot of unit tests fail because of this.\r\n\r\nLinks to explain the madness: http://stackoverflow.com/a/5573273 and http://stackoverflow.com/questions/5568294/compiled-c-sharp-lambda-expressions-performance\r\n\r\n@jbogard What are your thoughts on this?  I'm not sure where and how I'm going to change the code at this point.  I have to re-do parts of the expression tree, cause I can't pass constants like the PropertyMap in this way, or call the before and after map functions I think.  If you want to look into this one maybe I'll let you lol."},"comment":{"url":"https://api.github.com/repos/AutoMapper/AutoMapper/issues/comments/227921135","html_url":"https://github.com/AutoMapper/AutoMapper/pull/1346#issuecomment-227921135","issue_url":"https://api.github.com/repos/AutoMapper/AutoMapper/issues/1346","id":227921135,"user":{"login":"TylerCarlson1","id":6801536,"avatar_url":"https://avatars.githubusercontent.com/u/6801536?v=3","gravatar_id":"","url":"https://api.github.com/users/TylerCarlson1","html_url":"https://github.com/TylerCarlson1","followers_url":"https://api.github.com/users/TylerCarlson1/followers","following_url":"https://api.github.com/users/TylerCarlson1/following{/other_user}","gists_url":"https://api.github.com/users/TylerCarlson1/gists{/gist_id}","starred_url":"https://api.github.com/users/TylerCarlson1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TylerCarlson1/subscriptions","organizations_url":"https://api.github.com/users/TylerCarlson1/orgs","repos_url":"https://api.github.com/users/TylerCarlson1/repos","events_url":"https://api.github.com/users/TylerCarlson1/events{/privacy}","received_events_url":"https://api.github.com/users/TylerCarlson1/received_events","type":"User","site_admin":false},"created_at":"2016-06-23T00:57:55Z","updated_at":"2016-06-23T00:57:55Z","body":"Yay it's finally passing.  **DO NOT SUBMIT**"}}
{"actor":{"display_login":"TylerCarlson1"}}