{"action":"created","issue":{"url":"https://api.github.com/repos/tallforasmurf/byteplay/issues/9","labels_url":"https://api.github.com/repos/tallforasmurf/byteplay/issues/9/labels{/name}","comments_url":"https://api.github.com/repos/tallforasmurf/byteplay/issues/9/comments","events_url":"https://api.github.com/repos/tallforasmurf/byteplay/issues/9/events","html_url":"https://github.com/tallforasmurf/byteplay/issues/9","id":128034387,"number":9,"title":"TODO understand class defs","user":{"login":"tallforasmurf","id":1137018,"avatar_url":"https://avatars.githubusercontent.com/u/1137018?v=3","gravatar_id":"","url":"https://api.github.com/users/tallforasmurf","html_url":"https://github.com/tallforasmurf","followers_url":"https://api.github.com/users/tallforasmurf/followers","following_url":"https://api.github.com/users/tallforasmurf/following{/other_user}","gists_url":"https://api.github.com/users/tallforasmurf/gists{/gist_id}","starred_url":"https://api.github.com/users/tallforasmurf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tallforasmurf/subscriptions","organizations_url":"https://api.github.com/users/tallforasmurf/orgs","repos_url":"https://api.github.com/users/tallforasmurf/repos","events_url":"https://api.github.com/users/tallforasmurf/events{/privacy}","received_events_url":"https://api.github.com/users/tallforasmurf/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2016-01-21T22:20:41Z","updated_at":"2016-01-25T19:20:11Z","closed_at":"2016-01-25T19:20:11Z","body":"Understand how class defs work and how byteplay handles them. Is a class method a function with a code object? Or is the whole class def a block with methods nested as closures, or what?"},"comment":{"url":"https://api.github.com/repos/tallforasmurf/byteplay/issues/comments/174627304","html_url":"https://github.com/tallforasmurf/byteplay/issues/9#issuecomment-174627304","issue_url":"https://api.github.com/repos/tallforasmurf/byteplay/issues/9","id":174627304,"user":{"login":"tallforasmurf","id":1137018,"avatar_url":"https://avatars.githubusercontent.com/u/1137018?v=3","gravatar_id":"","url":"https://api.github.com/users/tallforasmurf","html_url":"https://github.com/tallforasmurf","followers_url":"https://api.github.com/users/tallforasmurf/followers","following_url":"https://api.github.com/users/tallforasmurf/following{/other_user}","gists_url":"https://api.github.com/users/tallforasmurf/gists{/gist_id}","starred_url":"https://api.github.com/users/tallforasmurf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tallforasmurf/subscriptions","organizations_url":"https://api.github.com/users/tallforasmurf/orgs","repos_url":"https://api.github.com/users/tallforasmurf/repos","events_url":"https://api.github.com/users/tallforasmurf/events{/privacy}","received_events_url":"https://api.github.com/users/tallforasmurf/received_events","type":"User","site_admin":false},"created_at":"2016-01-25T19:20:11Z","updated_at":"2016-01-25T19:20:11Z","body":"Commit #eafb752 incorporates the above knowledge into printcodelist().\r\nI deem no change necessary in any other part.\r\nThe input to Code.from_code() has to be a code object. There are lots of ways to get a code object. Here is a list of some (most?),\r\n\r\n* attribute `__code__` of a function object\r\n* attribute `__code__` of a lambda object (which is a function)\r\n* output of `compile()` built-in function\r\n* _classname_`.`_methodname_`.__code__`, including both normal and static methods\r\n* _classname_`.`_classmethod_`.__func__.__code__`\r\n* _classname_`.`_propertyname_`.fget.__code__` -- also `.fset` and `.fdel` if the property object has those attributes.\r\n"}}