SYMBOL INDEX (1196 symbols across 98 files) FILE: bin/bump_version.py function bump_version (line 31) | def bump_version() -> None: FILE: bin/create_demo_data.py function main (line 12) | def main(): FILE: bin/create_sample_json.py function main (line 11) | def main(): FILE: docs/_static/preview/assets/index-B-UkLYqV.js function t (line 1) | function t(s){const r={};return s.integrity&&(r.integrity=s.integrity),s... function n (line 1) | function n(s){if(s.ep)return;s.ep=!0;const r=t(s);fetch(s.href,r)} function R (line 1) | function R(){} function hi (line 1) | function hi(i){return i()} function Yt (line 1) | function Yt(){return Object.create(null)} function ae (line 1) | function ae(i){i.forEach(hi)} function kt (line 1) | function kt(i){return typeof i=="function"} function oe (line 1) | function oe(i,e){return i!=i?e==e:i!==e||i&&typeof i=="object"||typeof i... function Oi (line 1) | function Oi(i){return Object.keys(i).length===0} function mi (line 1) | function mi(i,...e){if(i==null){for(const n of e)n(void 0);return R}cons... function we (line 1) | function we(i,e,t){i.$$.on_destroy.push(mi(e,t))} function Di (line 1) | function Di(i,e,t){return i.set(t),e} function u (line 1) | function u(i,e){i.appendChild(e)} function O (line 1) | function O(i,e,t){i.insertBefore(e,t||null)} function I (line 1) | function I(i){i.parentNode&&i.parentNode.removeChild(i)} function Hi (line 1) | function Hi(i,e){for(let t=0;ti.removeEventLi... function Ct (line 1) | function Ct(i){return function(e){return e.preventDefault(),i.call(this,... function Mt (line 1) | function Mt(i){return function(e){return e.stopPropagation(),i.call(this... function c (line 1) | function c(i,e,t){t==null?i.removeAttribute(e):i.getAttribute(e)!==t&&i.... function yt (line 1) | function yt(i){let e;return{p(...t){e=t,e.forEach(n=>i.push(n))},r(){e.f... function Ni (line 1) | function Ni(i){return Array.from(i.childNodes)} function me (line 1) | function me(i,e){e=""+e,i.data!==e&&(i.data=e)} function le (line 1) | function le(i,e){i.value=e??""} function Z (line 1) | function Z(i,e,t,n){t==null?i.style.removeProperty(e):i.style.setPropert... function Xt (line 1) | function Xt(i,e,t){for(let n=0;n{const s=i.... function Ui (line 1) | function Ui(){At||(At=!0,Wi.then(pi))} function ut (line 1) | function ut(i){Be.push(i)} function pi (line 1) | function pi(){if(He!==0)return;const i=Qe;do{try{for(;Hei.indexOf(n)===-1?e.push(n)... function $e (line 1) | function $e(){Le={r:0,c:[],p:Le}} function qe (line 1) | function qe(){Le.r||ae(Le.c),Le=Le.p} function H (line 1) | function H(i,e){i&&i.i&&(ct.delete(i),i.i(e))} function z (line 1) | function z(i,e,t,n){if(i&&i.o){if(ct.has(i))return;ct.add(i),Le.c.push((... function dt (line 1) | function dt(i){return(i==null?void 0:i.length)!==void 0?i:Array.from(i)} function Xi (line 1) | function Xi(i,e){z(i,1,1,()=>{e.delete(i.key)})} function Gi (line 1) | function Gi(i,e,t,n,s,r,l,o,a,d,v,p){let m=i.length,f=r.length,g=m;const... function be (line 1) | function be(i){i&&i.c()} function pe (line 1) | function pe(i,e,t){const{fragment:n,after_update:s}=i.$$;n&&n.m(e,t),ut(... function ve (line 1) | function ve(i,e){const t=i.$$;t.fragment!==null&&(Yi(t.after_update),ae(... function Ki (line 1) | function Ki(i,e){i.$$.dirty[0]===-1&&(Ne.push(i),Ui(),i.$$.dirty.fill(0)... function ce (line 1) | function ce(i,e,t,n,s,r,l=null,o=[-1]){const a=Qe;Ke(i);const d=i.$$={fr... class ue (line 1) | class ue{constructor(){k(this,"$$");k(this,"$$set")}$destroy(){ve(this,1... method constructor (line 1) | constructor(){k(this,"$$");k(this,"$$set")} method $destroy (line 1) | $destroy(){ve(this,1),this.$destroy=R} method $on (line 1) | $on(e,t){if(!kt(t))return R;const n=this.$$.callbacks[e]||(this.$$.cal... method $set (line 1) | $set(e){this.$$set&&!Oi(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.... function Qi (line 1) | function Qi(i){let e,t;return{c(){e=x("svg"),t=x("path"),c(t,"fill-rule"... class Ji (line 1) | class Ji extends ue{constructor(e){super(),ce(this,e,null,Qi,oe,{})}} method constructor (line 1) | constructor(e){super(),ce(this,e,null,Qi,oe,{})} function en (line 1) | function en(i){let e,t,n,s,r,l,o,a,d,v,p,m,f,g,_,b,M;return{c(){e=x("svg... class tn (line 1) | class tn extends ue{constructor(e){super(),ce(this,e,null,en,oe,{})}} method constructor (line 1) | constructor(e){super(),ce(this,e,null,en,oe,{})} function nn (line 1) | function nn(i,e){return{subscribe:ft(i,e).subscribe}} function ft (line 1) | function ft(i,e=R){let t;const n=new Set;function s(o){if(oe(i,o)&&(i=o,... function vi (line 1) | function vi(i,e,t){const n=!Array.isArray(i),s=n?[i]:i;if(!s.every(Boole... function sn (line 1) | function sn(i){return i==="local"?localStorage:sessionStorage} function Pt (line 1) | function Pt(i,e,t){var n,s,r,l,o,a,d,v;t!=null&&t.onError&&console.warn(... function Kt (line 1) | function Kt(){return{collapseMode:"non-application",collapseCustomHide:"... method beforeRead (line 1) | beforeRead(i){return{...Kt(),...i}} class on (line 1) | class on extends Error{constructor(e){super(`Unreachable case: ${e}`)}} method constructor (line 1) | constructor(e){super(`Unreachable case: ${e}`)} function rn (line 1) | function rn(i,e){const t=e*(i.length-1),n=Math.floor(t),s=Math.ceil(t),r... function ln (line 1) | function ln(i,e,t){return i===1/0?(console.warn("clamp: value is Infinit... function xe (line 1) | function xe(i,e){const{from:t=[0,1],to:n=[0,1]}=e,s=e.clamp||!1;let r=(i... function an (line 1) | function an(i,e){return`rgb( function cn (line 5) | function cn(i){if(i.substr(0,1)=="#"){var e=(i.length-1)/3,t=[17,1,.0622... function un (line 5) | function un(i,e,t={}){const{ignore:n=[],capture:s=!0}=t,r=window;if(!r)r... function dn (line 5) | function dn(i){const e=document.createElement("div");return e.appendChil... function Et (line 5) | function Et(i){return dn(i).replace(/(\/|\\)/g,t=>`${t}`)} function fn (line 5) | function fn(i,e){if(i.length==0)return null;let t=i[0],n=e(t);for(const ... function ht (line 5) | function ht(){return Math.random().toString(36).substring(2)} function hn (line 5) | function hn(i){let e,t,n,s,r,l,o,a,d,v,p,m,f,g,_,b,M,T,y,F,D,E,P,w,C,S,$... function mn (line 10) | function mn(i,e,t){let n;we(i,K,y=>t(0,n=y));const s=ht();function r(){r... class pn (line 10) | class pn extends ue{constructor(e){super(),ce(this,e,mn,hn,oe,{})}} method constructor (line 10) | constructor(e){super(),ce(this,e,mn,hn,oe,{})} function vn (line 10) | function vn(i){let e,t,n,s,r,l,o,a,d,v,p,m,f,g,_,b,M,T,y,F,D,E,P,w;retur... function gn (line 10) | function gn(i,e,t){let n;we(i,Ge,a=>t(0,n=a));const s=ht();function r(){... class _n (line 10) | class _n extends ue{constructor(e){super(),ce(this,e,gn,vn,oe,{})}} method constructor (line 10) | constructor(e){super(),ce(this,e,gn,vn,oe,{})} function wn (line 10) | function wn(i){let e,t;return e=new _n({}),{c(){be(e.$$.fragment)},m(n,s... function bn (line 10) | function bn(i){let e,t;return e=new pn({}),{c(){be(e.$$.fragment)},m(n,s... function yn (line 10) | function yn(i){let e,t,n,s,r,l,o,a,d;const v=[bn,wn],p=[];function m(f,g... function Tn (line 10) | function Tn(i,e,t){let n;we(i,Ze,m=>t(0,n=m));const s=qi();function r(){... class An (line 10) | class An extends ue{constructor(e){super(),ce(this,e,Tn,yn,oe,{})}} method constructor (line 10) | constructor(e){super(),ce(this,e,Tn,yn,oe,{})} function Zt (line 10) | function Zt(i){let e,t;return e=new An({}),e.$on("close",i[9]),{c(){be(e... function En (line 10) | function En(i){let e,t,n,s,r,l,o,a,d=Et(i[0].target_description)+"",v,p,... function kn (line 14) | function kn(i,e,t){let n;we(i,Ze,f=>t(2,n=f));let{session:s}=e;const r=n... class Cn (line 14) | class Cn extends ue{constructor(e){super(),ce(this,e,kn,En,oe,{session:0... method constructor (line 14) | constructor(e){super(),ce(this,e,kn,En,oe,{session:0})} function gi (line 14) | function gi(i){return i>.6?"#FF4159":i>.3?"#F5A623":i>.15?"#D8CB2A":i>.0... function ei (line 14) | function ei(i,e,t){const n=i.slice();return n[21]=e[t],n} function ti (line 14) | function ti(i){let e,t,n,s,r,l,o,a,d,v,p,m,f,g,_,b,M;return{c(){e=h("div... function ii (line 14) | function ii(i){let e,t,n,s,r=i[0].group.frames.length-1+"",l,o,a,d,v,p;r... function ni (line 14) | function ni(i){let e,t=[],n=new Map,s,r=dt(i[0].children);const l=o=>o[2... function si (line 14) | function si(i,e){let t,n,s;return n=new wi({props:{frame:e[21],rootFrame... function Fn (line 14) | function Fn(i){let e,t,n,s,r=i[3]&&ti(i),l=i[0].group&&i[0].group.rootFr... function _i (line 14) | function _i(){const i='a:not([disabled]), button:not([disabled]), input[... function oi (line 14) | function oi(){const i=_i();var e=i.indexOf(document.activeElement);if(e>... function ri (line 14) | function ri(){const i=_i();var e=i.indexOf(document.activeElement);if(e>... function Pn (line 14) | function Pn(i,e,t){let n,s,r,l,o;we(i,Jt,w=>t(16,r=w)),we(i,Qt,w=>t(17,l... method constructor (line 14) | constructor(e){super(),ce(this,e,Pn,Fn,oe,{frame:0,rootFrame:1,indent:2})} function bi (line 14) | function bi(i,e,t){let n=i;for(const s of e)if(n=s(n,t),!n)return null;r... class Je (line 14) | class Je{constructor(e,t){k(this,"uuid",ht());k(this,"identifier");k(thi... method constructor (line 14) | constructor(e,t){k(this,"uuid",ht());k(this,"identifier");k(this,"_ide... method cloneDeep (line 14) | cloneDeep(){return new Je(this,this.context)} method children (line 14) | get children(){return this._children} method addChild (line 14) | addChild(e,t={}){if(e.removeFromParent(),e.parent=this,t.after){const ... method addChildren (line 14) | addChildren(e,t={}){e=e.slice(),t.after?(e.slice().reverse(),e.forEach... method removeFromParent (line 14) | removeFromParent(){if(this.parent){const e=this.parent._children.index... method getAttributes (line 14) | getAttributes(e){return Object.keys(this.attributes).filter(n=>n.start... method getAttributeValue (line 14) | getAttributeValue(e){const t=this.getAttributes(e);if(!t||t.length==0)... method hasTracebackHide (line 14) | get hasTracebackHide(){return this.getAttributeValue(Hn)=="1"} method function (line 14) | get function(){return this._identifierParts[0]} method filePath (line 14) | get filePath(){return this._identifierParts[1]??null} method lineNo (line 14) | get lineNo(){const e=this._identifierParts[2];return e?parseInt(e):null} method isSynthetic (line 14) | get isSynthetic(){return On.includes(this.identifier)} method filePathShort (line 14) | get filePathShort(){return this.isSynthetic&&this.parent?this.parent.f... method isApplicationCode (line 14) | get isApplicationCode(){if(this.isSynthetic)return!1;const e=this.file... method proportionOfParent (line 14) | get proportionOfParent(){return this.parent?this.time/this.parent.time:1} method className (line 14) | get className(){return this.getAttributeValue(Dn)??""} method library (line 14) | get library(){const e=this.filePathShort;return e?/^[\\/.]*[^\\/.]*/.e... class Vn (line 14) | class Vn{constructor(e){k(this,"id");k(this,"rootFrame");k(this,"_frames... method constructor (line 14) | constructor(e){k(this,"id");k(this,"rootFrame");k(this,"_frames",[]);t... method addFrame (line 14) | addFrame(e){e.group&&e.group.removeFrame(e),this._frames.push(e),e.gro... method removeFrame (line 14) | removeFrame(e){if(e.group!==this)throw new Error("Frame not in group."... method frames (line 14) | get frames(){return this._frames} method exitFrames (line 14) | get exitFrames(){const e=[];for(const t of this.frames){let n=!1;for(c... method libraries (line 14) | get libraries(){const e=[];for(const t of this.frames){const n=t.libra... function mt (line 14) | function mt(i,e){const{replaceWith:t}=e,n=i.parent;if(!n)throw new Error... function Nn (line 14) | function Nn(i,e){if(i.parent!==e.parent)throw new Error("Both frames mus... function Lt (line 14) | function Lt(i,e){if(e&&i.children&&i.children.forEach(t=>{Lt(t,!0)}),i.g... function Rt (line 14) | function Rt(i,e){if(!i)return null;for(const t of i.children)Rt(t),t.fil... function St (line 14) | function St(i,e){if(!i)return null;for(const t of i.children)St(t),t.has... function yi (line 14) | function yi(i,e){if(!i)return null;const t={};for(const n of i.children.... function Ti (line 14) | function Ti(i,e){if(!i)return null;const t=e.hideRegex,n=e.showRegex;fun... function Ai (line 14) | function Ai(i,e,t=!0){if(!i)return null;let n=null;for(const s of i.chil... function Ei (line 14) | function Ei(i,e){return i?(i.children.length===1&&i.children[0].identifi... function ki (line 14) | function ki(i,e,t=null){if(!i)return null;t===null&&(t=i.time,t<=0&&(t=1... function Ci (line 14) | function Ci(i,e){if(!i)return null;const t=o=>fn(o,a=>a.time),n=o=>{var ... function Mi (line 14) | function Mi(i,e){return i?(i.children.forEach(t=>Mi(t)),i.group&&i.group... function Bn (line 14) | function Bn(i){let e,t,n;return t=new wi({props:{frame:i[3],rootFrame:i[... function xn (line 14) | function xn(i){let e;return{c(){e=h("div"),e.innerHTML='
.001?"... function Gn (line 14) | function Gn(i,e){i.font=Pi;const t=Fi(e)=="both"?140:70,n=i.measureText(... function Zn (line 14) | function Zn(i,e,t){let{f:n}=e,s,r;function l(o){return`th... method _assignLibraryOrder (line 14) | _assignLibraryOrder(){const t={};for(const s of this.frames){const l=s... method colorForLibraryIndex (line 14) | colorForLibraryIndex(t){if(this._colors[t]!==void 0)return this._color... method libraryIndexForFrame (line 14) | libraryIndexForFrame(t){this._libraryOrder||this._assignLibraryOrder()... method colorForFrame (line 14) | colorForFrame(t){const n=this.libraryIndexForFrame(t);return this.colo... method frameMaxT (line 14) | get frameMaxT(){return this._frameMaxT===void 0&&(this._frameMaxT=this... method maxYOffset (line 14) | get maxYOffset(){return Math.max(0,(this.maxDepth+1)*ai+at*2+ci-this.h... method minZoom (line 14) | get minZoom(){return(this.width-2*Pe)/this.frameMaxT} method maxZoom (line 14) | get maxZoom(){return 10/15e-8} method fitContents (line 14) | fitContents(){this.startT=0,this.zoom=this.minZoom,this.isZoomedIn=!1} method clampViewport (line 14) | clampViewport(){this.zoom({processo... class rs (line 14) | class rs extends ue{constructor(e){super(),ce(this,e,os,ss,oe,{session:2... method constructor (line 14) | constructor(e){super(),ce(this,e,os,ss,oe,{session:2})} function ls (line 14) | function ls(i){let e,t,n=i[1].viewMode+"",s;return{c(){e=h("div"),t=L("U... function as (line 14) | function as(i){let e,t;return e=new rs({props:{session:i[0]}}),{c(){be(e... function cs (line 14) | function cs(i){let e,t;return e=new qn({props:{session:i[0]}}),{c(){be(e... function us (line 14) | function us(i){let e;return{c(){e=h("div"),e.innerHTML='
0&&e[0].endsWith(":")?e[0]:... function ps (line 14) | function ps(i,e){if(ui(i)!=ui(e))return i;const t=ze(i),n=ze(e);let s=0;... method render (line 14) | render(i,e){const t=new ms(e);return new hs({target:i,props:{session:t}})} function di (line 14) | function di(i,e,t){const n=i.slice();return n[10]=e[t],n} function fi (line 14) | function fi(i){let e,t=i[10].name+"",n;return{c(){e=h("option"),n=L(t),e... function gs (line 14) | function gs(i){let e,t,n=i[3].message+"",s;return{c(){e=h("div"),t=L("Er... function _s (line 14) | function _s(i){let e;return{c(){e=h("div"),e.textContent="Loading..."},m... function ws (line 14) | function ws(i){let e,t,n,s,r,l,o,a,d,v,p,m,f,g,_=dt(i[5]),b=[];for(let F... function bs (line 15) | function bs(i,e,t){const s=Object.entries(Object.assign({"../demo-data/d... class ys (line 15) | class ys extends ue{constructor(e){super(),ce(this,e,bs,ws,oe,{})}} method constructor (line 15) | constructor(e){super(),ce(this,e,bs,ws,oe,{})} FILE: docs/extensions/signature_change.py function process_sig (line 1) | def process_sig(app, what, name, obj, options, signature, return_annotat... function setup (line 7) | def setup(app): FILE: examples/aiohttp_web_hello.py function profiler_middleware (line 15) | async def profiler_middleware( function get_handler (line 28) | async def get_handler(request: web.Request) -> web.Response: function dev_init (line 36) | def dev_init(argv): FILE: examples/async_example_simple.py function main (line 6) | async def main(): FILE: examples/async_experiment_1.py function do_nothing (line 7) | def do_nothing(): function busy_wait (line 11) | def busy_wait(duration): function say (line 18) | async def say(what, when, profile=False): FILE: examples/async_experiment_3.py function do_nothing (line 9) | def do_nothing(): function busy_wait (line 13) | def busy_wait(duration): function say (line 20) | async def say(what, when, profile=False): function task (line 39) | async def task(): FILE: examples/busy_wait.py function function_1 (line 4) | def function_1(): function function_2 (line 8) | def function_2(): function main (line 12) | def main(): FILE: examples/c_sort.py function slow_key (line 28) | def slow_key(el): FILE: examples/context_api.py function main (line 11) | def main(): class A (line 34) | class A: method foo (line 36) | def foo(self): FILE: examples/demo_scripts/django_example/django_example/settings.py function custom_show_pyinstrument (line 59) | def custom_show_pyinstrument(request): FILE: examples/demo_scripts/django_example/django_example/views.py function hello_world (line 6) | def hello_world(request): FILE: examples/demo_scripts/django_template_render.py function main (line 15) | def main(): function render_templates (line 44) | def render_templates(iterations: int): FILE: examples/demo_scripts/sympy_calculation.py function do_thing (line 10) | def do_thing(): FILE: examples/demo_scripts/wikipedia_article_word_count.py function download (line 15) | def download(): function parse (line 21) | def parse(json_data): function most_common_words (line 25) | def most_common_words(page): function main (line 41) | def main(): FILE: examples/falcon_hello.py class ProfilerMiddleware (line 15) | class ProfilerMiddleware: method __init__ (line 16) | def __init__(self, interval=0.01): method process_request (line 19) | def process_request(self, req, resp): method process_response (line 22) | def process_response(self, req, resp, resource, req_succeeded): class HelloResource (line 27) | class HelloResource: method on_get (line 28) | def on_get(self, req, resp): FILE: examples/falcon_hello_file.py class ProfilerMiddleware (line 16) | class ProfilerMiddleware: method __init__ (line 19) | def __init__(self, interval=0.01): method process_request (line 22) | def process_request(self, req, resp): method process_response (line 25) | def process_response(self, req, resp, resource, req_succeeded): class HelloResource (line 32) | class HelloResource: method on_get (line 33) | def on_get(self, req, resp): FILE: examples/flask_hello.py function before_request (line 16) | def before_request(): function after_request (line 23) | def after_request(response): function hello_world (line 32) | def hello_world(): function sleep (line 37) | def sleep(): function do_something (line 43) | def do_something(): FILE: examples/litestar_hello.py class ProfilingMiddleware (line 12) | class ProfilingMiddleware(MiddlewareProtocol): method __init__ (line 13) | def __init__(self, app: ASGIApp) -> None: method __call__ (line 17) | async def __call__(self, scope: Scope, receive: Receive, send: Send) -... function index (line 40) | async def index() -> str: FILE: examples/tbhide_demo.py function D (line 4) | def D(): function C (line 8) | def C(): function B (line 14) | def B(): function A (line 20) | def A(): FILE: html_renderer/src/components/TimelineCanvasView.ts constant BACKGROUND_COLOR (line 8) | const BACKGROUND_COLOR = '#212325' constant FRAME_PITCH (line 10) | const FRAME_PITCH = 18 constant FRAME_HEIGHT (line 11) | const FRAME_HEIGHT = 17 constant X_MARGIN (line 13) | const X_MARGIN = 28 constant Y_MARGIN (line 14) | const Y_MARGIN = 17 constant Y_FRAME_INSET (line 15) | const Y_FRAME_INSET = 29 // vertical space between y margin and first fr... constant GRADIENT_STR (line 17) | const GRADIENT_STR = ['#3475BA','#318DBC','#47A298','#8AAE5D','#C1A731',... constant GRADIENT (line 18) | const GRADIENT = GRADIENT_STR.map(parseColor) type TimelineFrame (line 20) | interface TimelineFrame { class TimelineCanvasView (line 29) | class TimelineCanvasView extends CanvasView { method constructor (line 39) | constructor(container: HTMLElement) { method destroy (line 65) | destroy(): void { method setRootFrame (line 80) | setRootFrame(rootFrame: Frame) { method _collectFrames (line 90) | _collectFrames(frame: Frame, depth: number) { method updateTooltip (line 110) | updateTooltip(ctx: CanvasRenderingContext2D, timelineFrame: TimelineFr... method redraw (line 181) | redraw(ctx: CanvasRenderingContext2D, extra: { width: number; height: ... method drawAxes (line 225) | drawAxes(ctx: CanvasRenderingContext2D) { method drawAxis (line 254) | drawAxis(ctx: CanvasRenderingContext2D, increment: number, alpha: numb... method drawFrame (line 290) | drawFrame(ctx: CanvasRenderingContext2D, timelineFrame: TimelineFrame) { method _assignLibraryOrder (line 341) | _assignLibraryOrder() { method colorForLibraryIndex (line 356) | colorForLibraryIndex(libraryIndex: number) { method libraryIndexForFrame (line 371) | libraryIndexForFrame(timelineFrame: TimelineFrame) { method colorForFrame (line 388) | colorForFrame(timelineFrame: TimelineFrame) { method frameMaxT (line 407) | get frameMaxT() { method maxYOffset (line 414) | get maxYOffset() { method minZoom (line 418) | get minZoom() { method maxZoom (line 422) | get maxZoom() { method fitContents (line 428) | fitContents() { method clampViewport (line 434) | clampViewport() { method frameDims (line 462) | frameDims(timelineFrame: TimelineFrame): { x: number; y: number; w: nu... method xForT (line 479) | xForT(t: number): number { method tForX (line 483) | tForX(x: number): number { method frameName (line 487) | frameName(timelineFrame: TimelineFrame): string { method frameSelfTime (line 499) | frameSelfTime(timelineFrame: TimelineFrame): number { method hitTest (line 510) | hitTest(loc: {x: number, y: number}): TimelineFrame | null { method onWheel (line 531) | onWheel(event: WheelEvent) { method onMouseMove (line 552) | onMouseMove(event: MouseEvent): void { method onMouseLeave (line 565) | onMouseLeave(event: MouseEvent): void { method onMouseDown (line 570) | onMouseDown(event: MouseEvent): void { method windowMouseUp (line 578) | windowMouseUp(event: MouseEvent): void { method onTouchstart (line 594) | onTouchstart(event: TouchEvent) { method onTouchmove (line 609) | onTouchmove(event: TouchEvent) { method onTouchend (line 631) | onTouchend(event: TouchEvent) { method onTouchcancel (line 640) | onTouchcancel(event: TouchEvent) { method adjustXAxisForTouches (line 649) | adjustXAxisForTouches() { FILE: html_renderer/src/lib/CanvasView.ts method constructor (line 8) | constructor(readonly container: HTMLElement) { method destroy (line 35) | destroy() { method setNeedsRedraw (line 47) | setNeedsRedraw() { method redrawIfNeeded (line 58) | redrawIfNeeded() { method canvasViewRedraw (line 66) | canvasViewRedraw() { method width (line 80) | get width() { return this.canvas.width / window.devicePixelRatio } method height (line 81) | get height() { return this.canvas.height / window.devicePixelRatio } method setCanvasSize (line 83) | setCanvasSize() { FILE: html_renderer/src/lib/DevicePixelRatioObserver.ts class DevicePixelRatioObserver (line 1) | class DevicePixelRatioObserver { method constructor (line 4) | constructor(readonly onDevicePixelRatioChanged: () => void) { method createMediaQueryList (line 9) | createMediaQueryList() { method removeMediaQueryList (line 16) | removeMediaQueryList() { method _onChange (line 20) | _onChange(event: MediaQueryListEvent) { method destroy (line 24) | destroy() { FILE: html_renderer/src/lib/color.ts function colorForFrameProportionOfTotal (line 1) | function colorForFrameProportionOfTotal(proportion: number): string { FILE: html_renderer/src/lib/dataTypes.ts type SessionData (line 1) | interface SessionData { type FrameData (line 17) | interface FrameData { FILE: html_renderer/src/lib/model/Frame.ts type FrameData (line 5) | interface FrameData { constant IDENTIFIER_SEP (line 14) | const IDENTIFIER_SEP = "\x00" constant ATTRIBUTES_SEP (line 15) | const ATTRIBUTES_SEP = "\x01" constant AWAIT_FRAME_IDENTIFIER (line 17) | const AWAIT_FRAME_IDENTIFIER = "[await]" constant SELF_TIME_FRAME_IDENTIFIER (line 18) | const SELF_TIME_FRAME_IDENTIFIER = "[self]" constant OUT_OF_CONTEXT_FRAME_IDENTIFIER (line 19) | const OUT_OF_CONTEXT_FRAME_IDENTIFIER = "[out-of-context]" constant DUMMY_ROOT_FRAME_IDENTIFIER (line 20) | const DUMMY_ROOT_FRAME_IDENTIFIER = "[root]" constant SYNTHETIC_FRAME_IDENTIFIERS (line 22) | const SYNTHETIC_FRAME_IDENTIFIERS = [ constant SYNTHETIC_LEAF_IDENTIFIERS (line 29) | const SYNTHETIC_LEAF_IDENTIFIERS = [ constant ATTRIBUTE_MARKER_CLASS_NAME (line 35) | const ATTRIBUTE_MARKER_CLASS_NAME = "c" constant ATTRIBUTE_MARKER_LINE_NUMBER (line 36) | const ATTRIBUTE_MARKER_LINE_NUMBER = "l" constant ATTRIBUTE_MARKER_TRACEBACKHIDE (line 37) | const ATTRIBUTE_MARKER_TRACEBACKHIDE = "h" class Frame (line 39) | class Frame { method constructor (line 53) | constructor( method cloneDeep (line 78) | cloneDeep(): Frame { method children (line 82) | get children(): readonly Frame[] { method addChild (line 86) | addChild(frame: Frame, options: {after?: Frame} = {}) { method addChildren (line 100) | addChildren(frames: readonly Frame[], options: {after?: Frame} = {}) { method removeFromParent (line 111) | removeFromParent() { method getAttributes (line 119) | getAttributes(marker: string): {data: string, time: number}[] { method getAttributeValue (line 126) | getAttributeValue(marker: string) { method hasTracebackHide (line 141) | get hasTracebackHide(): boolean { method function (line 145) | get function(): string { method filePath (line 149) | get filePath(): string | null { method lineNo (line 153) | get lineNo(): number | null { method isSynthetic (line 158) | get isSynthetic(): boolean { method filePathShort (line 162) | get filePathShort(): string | null { method isApplicationCode (line 172) | get isApplicationCode(): boolean { method proportionOfParent (line 211) | get proportionOfParent(): number { method className (line 219) | get className(): string { method library (line 223) | get library(): string|null { type FrameContext (line 233) | interface FrameContext { FILE: html_renderer/src/lib/model/FrameGroup.ts class FrameGroup (line 4) | class FrameGroup { method constructor (line 9) | constructor(rootFrame: Frame) { method addFrame (line 14) | addFrame(frame: Frame) { method removeFrame (line 22) | removeFrame(frame: Frame) { method frames (line 35) | get frames(): readonly Frame[] { method exitFrames (line 39) | get exitFrames() { method libraries (line 60) | get libraries() { FILE: html_renderer/src/lib/model/Session.ts class Session (line 4) | class Session { method constructor (line 17) | constructor(data: SessionData) { method shortenPath (line 32) | shortenPath(path: string): string { function pathSplit (line 54) | function pathSplit(path: string): string[] { function getPathDrive (line 58) | function getPathDrive(path: string): string | null { function getRelPath (line 67) | function getRelPath(path: string, start: string): string { FILE: html_renderer/src/lib/model/frameOps.ts function deleteFrameFromTree (line 5) | function deleteFrameFromTree(frame: Frame, options: {replaceWith: 'child... function combineFrames (line 38) | function combineFrames(frame: Frame, into: Frame): void { function removeFrameFromGroups (line 66) | function removeFrameFromGroups(frame: Frame, recursive: boolean): void { FILE: html_renderer/src/lib/model/modelUtil.ts function applyProcessors (line 4) | function applyProcessors(rootFrame: Frame | null, processors: ProcessorF... FILE: html_renderer/src/lib/model/processors.ts type ProcessorOptions (line 7) | interface ProcessorOptions { type ProcessorFunction (line 12) | type ProcessorFunction = (frame: Frame | null, options: ProcessorOptions... type Processor (line 14) | interface Processor { function remove_importlib (line 45) | function remove_importlib(frame: Frame | null, options: ProcessorOptions... function remove_tracebackhide (line 72) | function remove_tracebackhide(frame: Frame | null, options: ProcessorOpt... function aggregate_repeated_calls (line 105) | function aggregate_repeated_calls(frame: Frame | null, options: Processo... function group_library_frames_processor (line 138) | function group_library_frames_processor(frame: Frame | null, options: Pr... function merge_consecutive_self_time (line 208) | function merge_consecutive_self_time(frame: Frame | null, options: Proce... function remove_unnecessary_self_time_nodes (line 245) | function remove_unnecessary_self_time_nodes(frame: Frame | null, options... function remove_irrelevant_nodes (line 269) | function remove_irrelevant_nodes(frame: Frame | null, options: Processor... function remove_first_pyinstrument_frames_processor (line 318) | function remove_first_pyinstrument_frames_processor(frame: Frame | null,... function remove_useless_groups_processor (line 355) | function remove_useless_groups_processor(frame: Frame | null, options: P... FILE: html_renderer/src/lib/settings.ts type ViewOptionsCallStack (line 3) | interface ViewOptionsCallStack { function CallStackViewOptionsDefaults (line 15) | function CallStackViewOptionsDefaults(): ViewOptionsCallStack { method beforeRead (line 34) | beforeRead(val) { type ViewOptionsTimeline (line 49) | interface ViewOptionsTimeline { FILE: html_renderer/src/lib/utils.ts class UnreachableCaseError (line 2) | class UnreachableCaseError extends Error { method constructor (line 3) | constructor(value: never) { function sampleGradient (line 8) | function sampleGradient(gradient: number[][], location: number) { function clamp (line 18) | function clamp(value: number, min: number, max: number): number { function map (line 37) | function map(x: number, options: { function mapRGBColor (line 53) | function mapRGBColor(x: number, options: { function mapColor (line 65) | function mapColor(x: number, options: { function parseColor (line 81) | function parseColor(input: string) { function cyrb53 (line 97) | function cyrb53(str: string, seed: number = 0) { function hash (line 112) | function hash(str: string) { type OnClickOutsideOptions (line 116) | interface OnClickOutsideOptions { type OnClickOutsideHandler (line 121) | type OnClickOutsideHandler = (evt: MouseEvent) => void; function onClickOutside (line 136) | function onClickOutside( function escapeForHtml (line 199) | function escapeForHtml(str: string) { function htmlForStringWithWBRAtSlashes (line 205) | function htmlForStringWithWBRAtSlashes(str: string) { function maxBy (line 210) | function maxBy(list: readonly T[], keyFunc: (a:T) => number): T|null { function randomId (line 230) | function randomId() { FILE: html_renderer/src/main.ts method render (line 7) | render(element: HTMLElement, data: SessionData) { FILE: metrics/count_samples.py function do_nothing (line 6) | def do_nothing(): function busy_wait (line 10) | def busy_wait(duration: float): function count_samples (line 16) | def count_samples(duration: float, interval: float, use_timing_thread: b... FILE: metrics/frame_info.py function test_func (line 14) | def test_func(): FILE: metrics/interrupt.py function func (line 10) | def func(): FILE: metrics/multi_overhead.py function test_func_re (line 27) | def test_func_re(): function test_func_template (line 33) | def test_func_template(): function time_base (line 41) | def time_base(function, repeats): function time_profile (line 46) | def time_profile(function, repeats): function time_cProfile (line 52) | def time_cProfile(function, repeats): function time_pyinstrument (line 58) | def time_pyinstrument(function, repeats): function timings_for_test (line 80) | def timings_for_test(test_func, repeats): FILE: metrics/overflow.py function func (line 8) | def func(num): FILE: metrics/overhead.py function test_func_template (line 24) | def test_func_template(): FILE: noxfile.py function test (line 10) | def test(session): function docs (line 18) | def docs(session): function livedocs (line 25) | def livedocs(session): function htmldev (line 32) | def htmldev(session): function watchbuild (line 39) | def watchbuild(session): function watch (line 60) | def watch(session): FILE: pyinstrument/__init__.py function load_ipython_extension (line 13) | def load_ipython_extension(ipython): FILE: pyinstrument/__main__.py function main (line 29) | def main(): class OptionsParseError (line 438) | class OptionsParseError(Exception): function compute_render_options (line 442) | def compute_render_options( function create_renderer (line 532) | def create_renderer( function get_renderer_class (line 551) | def get_renderer_class(options: CommandLineOptions) -> type[renderers.Re... function guess_renderer_from_outfile (line 589) | def guess_renderer_from_outfile(outfile: str) -> str | None: function report_dir (line 611) | def report_dir() -> str: function load_report_from_temp_storage (line 619) | def load_report_from_temp_storage(identifier: str) -> Session: function save_report_to_temp_storage (line 630) | def save_report_to_temp_storage(session: Session): class CommandLineOptions (line 649) | class CommandLineOptions: class ValueWithRemainingArgs (line 677) | class ValueWithRemainingArgs: method __init__ (line 678) | def __init__(self, value: str, remaining_args: list[str]): FILE: pyinstrument/context_manager.py class ProfileContextOptions (line 17) | class ProfileContextOptions(typing.TypedDict, total=False): class ProfileContext (line 25) | class ProfileContext: method __init__ (line 28) | def __init__( method __call__ (line 44) | def __call__(self, func: CallableVar, /) -> CallableVar: ... method __call__ (line 46) | def __call__(self, /, **kwargs: Unpack[ProfileContextOptions]) -> "Pro... method __call__ (line 47) | def __call__( method __enter__ (line 65) | def __enter__(self): method __exit__ (line 84) | def __exit__(self, exc_type, exc_value, traceback): class _Profile (line 100) | class _Profile: method __call__ (line 102) | def __call__(self, func: CallableVar, /) -> CallableVar: ... method __call__ (line 104) | def __call__(self, /, **kwargs: Unpack[ProfileContextOptions]) -> "Pro... method __call__ (line 105) | def __call__( FILE: pyinstrument/frame.py class FrameContext (line 46) | class FrameContext(typing.Protocol): method shorten_path (line 47) | def shorten_path(self, path: str) -> str: ... method sys_prefixes (line 49) | def sys_prefixes(self) -> Sequence[str]: ... class Frame (line 52) | class Frame: method __init__ (line 69) | def __init__( method record_time_from_frame_info (line 94) | def record_time_from_frame_info(self, frame_info: str, time: float): method remove_from_parent (line 105) | def remove_from_parent(self): method context (line 114) | def context(self): method set_context (line 119) | def set_context(self, context: FrameContext | None): method new_subclass_with_frame_info (line 125) | def new_subclass_with_frame_info(frame_info: str) -> Frame: method proportion_of_parent (line 130) | def proportion_of_parent(self) -> float: method total_self_time (line 140) | def total_self_time(self) -> float: method function (line 156) | def function(self) -> str: method file_path (line 160) | def file_path(self) -> str | None: method line_no (line 165) | def line_no(self) -> int | None: method file_path_short (line 170) | def file_path_short(self) -> str | None: method is_application_code (line 181) | def is_application_code(self) -> bool: method code_position_short (line 213) | def code_position_short(self) -> str | None: method add_child (line 222) | def add_child(self, frame: Frame, after: Frame | None = None): method add_children (line 241) | def add_children(self, frames: Sequence[Frame], after: Frame | None = ... method is_synthetic (line 255) | def is_synthetic(self) -> bool: method is_synthetic_leaf (line 259) | def is_synthetic_leaf(self) -> bool: method children (line 263) | def children(self) -> Sequence[Frame]: method await_time (line 269) | def await_time(self) -> float: method get_attribute_value (line 281) | def get_attribute_value(self, attribute_marker: str) -> str | None: method class_name (line 305) | def class_name(self) -> str | None: method has_tracebackhide (line 309) | def has_tracebackhide(self) -> bool: method self_check (line 315) | def self_check(self, recursive: bool = True) -> None: method __repr__ (line 334) | def __repr__(self): method to_json_str (line 342) | def to_json_str(self): class FrameGroup (line 360) | class FrameGroup: method __init__ (line 364) | def __init__(self, root: Frame): method frames (line 373) | def frames(self) -> Sequence[Frame]: method add_frame (line 376) | def add_frame(self, frame: Frame): method remove_frame (line 383) | def remove_frame(self, frame: Frame): method exit_frames (line 389) | def exit_frames(self): method __repr__ (line 402) | def __repr__(self): FILE: pyinstrument/frame_info.py function parse_frame_info (line 14) | def parse_frame_info(frame_info: str) -> Tuple[str, List[str]]: function frame_info_get_identifier (line 30) | def frame_info_get_identifier(frame_info: str) -> str: FILE: pyinstrument/frame_ops.py class IdentifierDoesntMatchException (line 20) | class IdentifierDoesntMatchException(ValueError): function build_frame_tree (line 24) | def build_frame_tree( function delete_frame_from_tree (line 76) | def delete_frame_from_tree( function combine_frames (line 114) | def combine_frames(frame: Frame, into: Frame): function remove_frame_from_groups (line 137) | def remove_frame_from_groups(frame: Frame, recursive: bool): FILE: pyinstrument/low_level/pyi_floatclock.c function pyi_monotonic_coarse_resolution (line 15) | double pyi_monotonic_coarse_resolution(void) function pyi_floatclock (line 22) | double pyi_floatclock(PYIFloatClockType timer) function pyi_monotonic_coarse_resolution (line 55) | double pyi_monotonic_coarse_resolution(void) function pyi_floatclock (line 76) | double pyi_floatclock(PYIFloatClockType timer) FILE: pyinstrument/low_level/pyi_floatclock.h type PYIFloatClockType (line 7) | typedef enum { FILE: pyinstrument/low_level/pyi_timing_thread.c type Subscription (line 17) | typedef struct Subscription { function get_interval (line 26) | static double get_interval(double max_interval) { function timing_thread (line 38) | static void timing_thread(void* args) { function pyi_timing_thread_subscribe (line 57) | int pyi_timing_thread_subscribe(double desiredInterval) { function pyi_timing_thread_unsubscribe (line 111) | int pyi_timing_thread_unsubscribe(int id) { function pyi_timing_thread_get_time (line 142) | double pyi_timing_thread_get_time(void) { function pyi_timing_thread_get_interval (line 146) | double pyi_timing_thread_get_interval(void) { FILE: pyinstrument/low_level/pyi_timing_thread_python.py class Subscription (line 12) | class Subscription: method __init__ (line 13) | def __init__(self, interval: float, id: int): function get_interval (line 21) | def get_interval(max_interval: float): function timing_thread (line 27) | def timing_thread(): function pyi_timing_thread_subscribe (line 38) | def pyi_timing_thread_subscribe(desired_interval: float): function pyi_timing_thread_unsubscribe (line 62) | def pyi_timing_thread_unsubscribe(id: int): function pyi_timing_thread_get_time (line 79) | def pyi_timing_thread_get_time() -> float: function pyi_timing_thread_get_interval (line 83) | def pyi_timing_thread_get_interval() -> float: FILE: pyinstrument/low_level/stat_profile.c function PyFrameObject (line 23) | static PyFrameObject * type ProfilerState (line 35) | typedef struct profiler_state { function ProfilerState_SetTarget (line 48) | static void ProfilerState_SetTarget(ProfilerState *self, PyObject *targe... function ProfilerState_UpdateContextVar (line 60) | static int ProfilerState_UpdateContextVar(ProfilerState *self) { function ProfilerState_GetTime (line 85) | static double ProfilerState_GetTime(ProfilerState *self) { function ProfilerState_Dealloc (line 115) | static void ProfilerState_Dealloc(ProfilerState *self) { function ProfilerState (line 169) | static ProfilerState *ProfilerState_New(void) { function stat_profile_init (line 207) | static int function PyObject (line 236) | static PyObject * function PyCodeObject (line 261) | static PyCodeObject * function PyObject (line 277) | static PyObject * function PyObject (line 365) | static PyObject * function _get_tracebackhide (line 466) | static const int function PyObject (line 495) | static PyObject * function _parse_timer_type (line 561) | static int function profile (line 594) | static int function PyObject (line 702) | static PyObject * function PyObject (line 796) | static PyObject * function measure_timing_overhead_for_timer (line 814) | static inline double function PyObject (line 834) | static PyObject * function PyObject (line 853) | static PyObject * function PyMODINIT_FUNC (line 881) | PyMODINIT_FUNC PyInit_stat_profile(void) FILE: pyinstrument/low_level/stat_profile.pyi function setstatprofile (line 7) | def setstatprofile( function get_frame_info (line 14) | def get_frame_info(frame: types.FrameType) -> str: ... function measure_timing_overhead (line 15) | def measure_timing_overhead() -> Dict[TimerType, float]: ... function walltime_coarse_resolution (line 16) | def walltime_coarse_resolution() -> float | None: ... FILE: pyinstrument/low_level/stat_profile_python.py class PythonStatProfiler (line 17) | class PythonStatProfiler: method __init__ (line 21) | def __init__( method __del__ (line 56) | def __del__(self): method profile (line 60) | def profile(self, frame: types.FrameType, event: str, arg: Any): function setstatprofile (line 96) | def setstatprofile( function get_frame_info (line 116) | def get_frame_info(frame: types.FrameType) -> str: FILE: pyinstrument/magic/_utils.py class PrePostAstTransformer (line 10) | class PrePostAstTransformer(NodeTransformer): method __init__ (line 44) | def __init__(self, pre: str | ast.Module, post: str | ast.Module): method reset (line 62) | def reset(self): method visit_Module (line 76) | def visit_Module(self, node: ast.Module): FILE: pyinstrument/magic/magic.py function _get_active_profiler (line 35) | def _get_active_profiler(): class InterruptSilently (line 43) | class InterruptSilently(Exception): class PyinstrumentMagic (line 48) | class PyinstrumentMagic(Magics): method __init__ (line 49) | def __init__(self, shell): method recreate_transformer (line 53) | def recreate_transformer(self, target_description: str): method pyinstrument (line 179) | def pyinstrument(self, line, cell=None): method run_cell_async (line 294) | def run_cell_async(self, ip, code): function strip_ipython_frames_processor (line 326) | def strip_ipython_frames_processor(frame: Frame | None, options: Process... FILE: pyinstrument/middleware.py function get_renderer (line 20) | def get_renderer(path) -> Renderer: class ProfilerMiddleware (line 37) | class ProfilerMiddleware(MiddlewareMixin): # type: ignore method process_request (line 38) | def process_request(self, request): method process_response (line 59) | def process_response(self, request, response): FILE: pyinstrument/processors.py function remove_importlib (line 25) | def remove_importlib(frame: Frame | None, options: ProcessorOptions) -> ... function remove_tracebackhide (line 41) | def remove_tracebackhide(frame: Frame | None, options: ProcessorOptions)... function aggregate_repeated_calls (line 59) | def aggregate_repeated_calls(frame: Frame | None, options: ProcessorOpti... function group_library_frames_processor (line 95) | def group_library_frames_processor(frame: Frame | None, options: Process... function merge_consecutive_self_time (line 152) | def merge_consecutive_self_time( function remove_unnecessary_self_time_nodes (line 182) | def remove_unnecessary_self_time_nodes( function remove_irrelevant_nodes (line 202) | def remove_irrelevant_nodes( function remove_first_pyinstrument_frames_processor (line 237) | def remove_first_pyinstrument_frames_processor( FILE: pyinstrument/profiler.py class ActiveProfilerSession (line 23) | class ActiveProfilerSession: method __init__ (line 26) | def __init__( class Profiler (line 45) | class Profiler: method __init__ (line 56) | def __init__( method interval (line 78) | def interval(self) -> float: method async_mode (line 86) | def async_mode(self) -> AsyncMode: method last_session (line 112) | def last_session(self) -> Session | None: method start (line 118) | def start( method stop (line 171) | def stop(self) -> Session: method is_running (line 216) | def is_running(self): method reset (line 222) | def reset(self): method __enter__ (line 231) | def __enter__(self): method __exit__ (line 249) | def __exit__(self, *args: Any): method _sampler_saw_call_stack (line 253) | def _sampler_saw_call_stack( method print (line 292) | def print( method output_text (line 334) | def output_text( method output_html (line 365) | def output_html( method write_html (line 376) | def write_html( method open_in_browser (line 396) | def open_in_browser(self, timeline: bool = False, resample_interval: f... method output (line 406) | def output(self, renderer: renderers.Renderer) -> str: method _get_last_session_or_fail (line 416) | def _get_last_session_or_fail(self) -> Session: FILE: pyinstrument/renderers/base.py class Renderer (line 16) | class Renderer: method __init__ (line 31) | def __init__(self): method render (line 34) | def render(self, session: Session) -> str: class MisconfigurationError (line 40) | class MisconfigurationError(Exception): class FrameRenderer (line 44) | class FrameRenderer(Renderer): method __init__ (line 66) | def __init__( method default_processors (line 105) | def default_processors(self) -> ProcessorList: method preprocess (line 111) | def preprocess(self, root_frame: Frame | None) -> Frame | None: method render (line 117) | def render(self, session: Session) -> str: FILE: pyinstrument/renderers/console.py class ConsoleRenderer (line 22) | class ConsoleRenderer(FrameRenderer): method __init__ (line 28) | def __init__( method render (line 64) | def render(self, session: Session) -> str: method render_preamble (line 91) | def render_preamble(self, session: Session) -> str: method should_render_frame (line 123) | def should_render_frame(self, frame: Frame) -> bool: method should_render_frame_in_group (line 128) | def should_render_frame_in_group(self, frame: Frame) -> bool: method should_ignore_group (line 137) | def should_ignore_group(self, group: FrameGroup) -> bool: method group_description (line 145) | def group_description(self, group: FrameGroup) -> str: method libraries_for_frames (line 154) | def libraries_for_frames(self, frames: list[Frame]) -> list[str]: method render_frame (line 164) | def render_frame( method render_frame_flat (line 208) | def render_frame_flat(self, frame: Frame, precision: int) -> str: method frame_description (line 246) | def frame_description( method frame_proportion_of_total_time (line 275) | def frame_proportion_of_total_time(self, time: float) -> float: method _ansi_color_for_time (line 280) | def _ansi_color_for_time(self, time: float) -> str: method _ansi_color_for_name (line 292) | def _ansi_color_for_name(self, frame: Frame) -> str: method default_processors (line 298) | def default_processors(self) -> ProcessorList: class colors_enabled (line 310) | class colors_enabled: class colors_disabled (line 327) | class colors_disabled: FILE: pyinstrument/renderers/html.py class HTMLRenderer (line 19) | class HTMLRenderer(Renderer): method __init__ (line 40) | def __init__( method render (line 73) | def render(self, session: Session): method open_in_browser (line 131) | def open_in_browser(self, session: Session, output_filename: str | Non... class JSONForHTMLRenderer (line 154) | class JSONForHTMLRenderer(FrameRenderer): method default_processors (line 164) | def default_processors(self) -> ProcessorList: method render (line 167) | def render(self, session: Session) -> str: FILE: pyinstrument/renderers/html_resources/app.js function F (line 1) | function F(){} function ve (line 1) | function ve(i){return i()} function Pe (line 1) | function Pe(){return Object.create(null)} function oe (line 1) | function oe(i){i.forEach(ve)} function pt (line 1) | function pt(i){return typeof i=="function"} function re (line 1) | function re(i,e){return i!=i?e==e:i!==e||i&&typeof i=="object"||typeof i... function ki (line 1) | function ki(i){return Object.keys(i).length===0} function St (line 1) | function St(i,...e){if(i==null){for(const n of e)n(void 0);return F}cons... function ge (line 1) | function ge(i,e,t){i.$$.on_destroy.push(St(e,t))} function Ci (line 1) | function Ci(i,e,t){return i.set(t),e} function u (line 1) | function u(i,e){i.appendChild(e)} function S (line 1) | function S(i,e,t){i.insertBefore(e,t||null)} function L (line 1) | function L(i){i.parentNode&&i.parentNode.removeChild(i)} function f (line 1) | function f(i){return document.createElement(i)} function V (line 1) | function V(i){return document.createElementNS("http://www.w3.org/2000/sv... function I (line 1) | function I(i){return document.createTextNode(i)} function b (line 1) | function b(){return I(" ")} function Mi (line 1) | function Mi(){return I("")} function x (line 1) | function x(i,e,t,n){return i.addEventListener(e,t,n),()=>i.removeEventLi... function vt (line 1) | function vt(i){return function(e){return e.preventDefault(),i.call(this,... function gt (line 1) | function gt(i){return function(e){return e.stopPropagation(),i.call(this... function a (line 1) | function a(i,e,t){t==null?i.removeAttribute(e):i.getAttribute(e)!==t&&i.... function _t (line 1) | function _t(i){let e;return{p(...t){e=t,e.forEach(n=>i.push(n))},r(){e.f... function Fi (line 1) | function Fi(i){return Array.from(i.childNodes)} function _e (line 1) | function _e(i,e){e=""+e,i.data!==e&&(i.data=e)} function ae (line 1) | function ae(i,e){i.value=e??""} function j (line 1) | function j(i,e,t,n){t==null?i.style.removeProperty(e):i.style.setPropert... function Ee (line 1) | function Ee(i,e,t){i.classList.toggle(e,!!t)} function Pi (line 1) | function Pi(i,e,{bubbles:t=!1,cancelable:n=!1}={}){return new CustomEven... class Ri (line 1) | class Ri{constructor(e=!1){T(this,"is_svg",!1);T(this,"e");T(this,"n");T... method constructor (line 1) | constructor(e=!1){T(this,"is_svg",!1);T(this,"e");T(this,"n");T(this,"... method c (line 1) | c(e){this.h(e)} method m (line 1) | m(e,t,n=null){this.e||(this.is_svg?this.e=V(t.nodeName):this.e=f(t.nod... method h (line 1) | h(e){this.e.innerHTML=e,this.n=Array.from(this.e.nodeName==="TEMPLATE"... method i (line 1) | i(e){for(let t=0;t{const s=i.... function Di (line 1) | function Di(){yt||(yt=!0,Si.then(Ht))} function Tt (line 1) | function Tt(i){De.push(i)} function Ht (line 1) | function Ht(){if(He!==0)return;const i=Ye;do{try{for(;Hei.indexOf(n)===-1?e.push(n)... function Oe (line 1) | function Oe(){Re={r:0,c:[],p:Re}} function Ve (line 1) | function Ve(){Re.r||oe(Re.c),Re=Re.p} function D (line 1) | function D(i,e){i&&i.i&&(nt.delete(i),i.i(e))} function N (line 1) | function N(i,e,t,n){if(i&&i.o){if(nt.has(i))return;nt.add(i),Re.c.push((... function Ot (line 1) | function Ot(i){return(i==null?void 0:i.length)!==void 0?i:Array.from(i)} function Vi (line 1) | function Vi(i,e){N(i,1,1,()=>{e.delete(i.key)})} function xi (line 1) | function xi(i,e,t,n,s,l,r,o,c,d,v,p){let m=i.length,h=l.length,g=m;const... function we (line 1) | function we(i){i&&i.c()} function ce (line 1) | function ce(i,e,t){const{fragment:n,after_update:s}=i.$$;n&&n.m(e,t),Tt(... function ue (line 1) | function ue(i,e){const t=i.$$;t.fragment!==null&&(Oi(t.after_update),oe(... function Ni (line 1) | function Ni(i,e){i.$$.dirty[0]===-1&&(Se.push(i),Di(),i.$$.dirty.fill(0)... function de (line 1) | function de(i,e,t,n,s,l,r=null,o=[-1]){const c=Ye;Xe(i);const d=i.$$={fr... class he (line 1) | class he{constructor(){T(this,"$$");T(this,"$$set")}$destroy(){ue(this,1... method constructor (line 1) | constructor(){T(this,"$$");T(this,"$$set")} method $destroy (line 1) | $destroy(){ue(this,1),this.$destroy=F} method $on (line 1) | $on(e,t){if(!pt(t))return F;const n=this.$$.callbacks[e]||(this.$$.cal... method $set (line 1) | $set(e){this.$$set&&!ki(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.... function Bi (line 1) | function Bi(i){let e,t;return{c(){e=V("svg"),t=V("path"),a(t,"fill-rule"... class zi (line 1) | class zi extends he{constructor(e){super(),de(this,e,null,Bi,re,{})}} method constructor (line 1) | constructor(e){super(),de(this,e,null,Bi,re,{})} function Wi (line 1) | function Wi(i){let e,t,n,s,l,r,o,c,d,v,p,m,h,g,w,E,C;return{c(){e=V("svg... class qi (line 1) | class qi extends he{constructor(e){super(),de(this,e,null,Wi,re,{})}} method constructor (line 1) | constructor(e){super(),de(this,e,null,Wi,re,{})} function Ui (line 1) | function Ui(i,e){return{subscribe:st(i,e).subscribe}} function st (line 1) | function st(i,e=F){let t;const n=new Set;function s(o){if(re(i,o)&&(i=o,... function Vt (line 1) | function Vt(i,e,t){const n=!Array.isArray(i),s=n?[i]:i;if(!s.every(Boole... function Yi (line 1) | function Yi(i){return i==="local"?localStorage:sessionStorage} function kt (line 1) | function kt(i,e,t){var n,s,l,r,o,c,d,v;t!=null&&t.onError&&console.warn(... function xt (line 1) | function xt(){return{collapseMode:"non-application",collapseCustomHide:"... method beforeRead (line 1) | beforeRead(i){return{...xt(),...i}} class Xi (line 1) | class Xi extends Error{constructor(e){super(`Unreachable case: ${e}`)}} method constructor (line 1) | constructor(e){super(`Unreachable case: ${e}`)} function Gi (line 1) | function Gi(i,e){const t=e*(i.length-1),n=Math.floor(t),s=Math.ceil(t),l... function ji (line 1) | function ji(i,e,t){return i===1/0?(console.warn("clamp: value is Infinit... function Ne (line 1) | function Ne(i,e){const{from:t=[0,1],to:n=[0,1]}=e,s=e.clamp||!1;let l=(i... function Zi (line 1) | function Zi(i,e){return`rgb( function Ki (line 5) | function Ki(i){if(i.substr(0,1)=="#"){var e=(i.length-1)/3,t=[17,1,.0622... function Qi (line 5) | function Qi(i,e,t={}){const{ignore:n=[],capture:s=!0}=t,l=window;if(!l)r... function Ji (line 5) | function Ji(i){const e=document.createElement("div");return e.appendChil... function Ct (line 5) | function Ct(i){return Ji(i).replace(/(\/|\\)/g,t=>`${t}`)} function en (line 5) | function en(i,e){if(i.length==0)return null;let t=i[0],n=e(t);for(const ... function ot (line 5) | function ot(){return Math.random().toString(36).substring(2)} function tn (line 5) | function tn(i){let e,t,n,s,l,r,o,c,d,v,p,m,h,g,w,E,C,y,k,H,W,P,M,_,A,R,B... function nn (line 10) | function nn(i,e,t){let n;ge(i,Z,k=>t(0,n=k));const s=ot();function l(){r... class sn (line 10) | class sn extends he{constructor(e){super(),de(this,e,nn,tn,re,{})}} method constructor (line 10) | constructor(e){super(),de(this,e,nn,tn,re,{})} function on (line 10) | function on(i){let e,t,n,s,l,r,o,c,d,v,p,m,h,g,w,E,C,y,k,H,W,P,M,_;retur... function rn (line 10) | function rn(i,e,t){let n;ge(i,je,c=>t(0,n=c));const s=ot();function l(){... class ln (line 10) | class ln extends he{constructor(e){super(),de(this,e,rn,on,re,{})}} method constructor (line 10) | constructor(e){super(),de(this,e,rn,on,re,{})} function an (line 10) | function an(i){let e,t;return e=new ln({}),{c(){we(e.$$.fragment)},m(n,s... function cn (line 10) | function cn(i){let e,t;return e=new sn({}),{c(){we(e.$$.fragment)},m(n,s... function un (line 10) | function un(i){let e,t,n,s,l,r,o,c,d;const v=[cn,an],p=[];function m(h,g... function dn (line 10) | function dn(i,e,t){let n;ge(i,Ge,m=>t(0,n=m));const s=Li();function l(){... class hn (line 10) | class hn extends he{constructor(e){super(),de(this,e,dn,un,re,{})}} method constructor (line 10) | constructor(e){super(),de(this,e,dn,un,re,{})} function Nt (line 10) | function Nt(i){let e,t;return e=new hn({}),e.$on("close",i[9]),{c(){we(e... function fn (line 10) | function fn(i){let e,t,n,s,l,r,o,c,d=Ct(i[0].target_description)+"",v,p,... function mn (line 14) | function mn(i,e,t){let n;ge(i,Ge,h=>t(2,n=h));let{session:s}=e;const l=n... class pn (line 14) | class pn extends he{constructor(e){super(),de(this,e,mn,fn,re,{session:0... method constructor (line 14) | constructor(e){super(),de(this,e,mn,fn,re,{session:0})} function zt (line 14) | function zt(i){return i>.6?"#FF4159":i>.3?"#F5A623":i>.15?"#D8CB2A":i>.0... function Wt (line 14) | function Wt(i,e,t){const n=i.slice();return n[21]=e[t],n} function qt (line 14) | function qt(i){let e,t,n,s,l,r,o,c,d,v,p,m,h,g,w,E,C;return{c(){e=f("div... function Ut (line 14) | function Ut(i){let e,t,n,s,l=i[0].group.frames.length-1+"",r,o,c,d,v,p;r... function Yt (line 14) | function Yt(i){let e,t=[],n=new Map,s,l=Ot(i[0].children);const r=o=>o[2... function Xt (line 14) | function Xt(i,e){let t,n,s;return n=new Kt({props:{frame:e[21],rootFrame... function gn (line 14) | function gn(i){let e,t,n,s,l=i[3]&&qt(i),r=i[0].group&&i[0].group.rootFr... function Gt (line 14) | function Gt(){const i='a:not([disabled]), button:not([disabled]), input[... function jt (line 14) | function jt(){const i=Gt();var e=i.indexOf(document.activeElement);if(e>... function Zt (line 14) | function Zt(){const i=Gt();var e=i.indexOf(document.activeElement);if(e>... function _n (line 14) | function _n(i,e,t){let n,s,l,r,o;ge(i,Bt,_=>t(16,l=_)),ge(i,$t,_=>t(17,r... method constructor (line 14) | constructor(e){super(),de(this,e,_n,gn,re,{frame:0,rootFrame:1,indent:2})} function Qt (line 14) | function Qt(i,e,t){let n=i;for(const s of e)if(n=s(n,t),!n)return null;r... class Ke (line 14) | class Ke{constructor(e,t){T(this,"uuid",ot());T(this,"identifier");T(thi... method constructor (line 14) | constructor(e,t){T(this,"uuid",ot());T(this,"identifier");T(this,"_ide... method cloneDeep (line 14) | cloneDeep(){return new Ke(this,this.context)} method children (line 14) | get children(){return this._children} method addChild (line 14) | addChild(e,t={}){if(e.removeFromParent(),e.parent=this,t.after){const ... method addChildren (line 14) | addChildren(e,t={}){e=e.slice(),t.after?(e.slice().reverse(),e.forEach... method removeFromParent (line 14) | removeFromParent(){if(this.parent){const e=this.parent._children.index... method getAttributes (line 14) | getAttributes(e){return Object.keys(this.attributes).filter(n=>n.start... method getAttributeValue (line 14) | getAttributeValue(e){const t=this.getAttributes(e);if(!t||t.length==0)... method hasTracebackHide (line 14) | get hasTracebackHide(){return this.getAttributeValue(An)=="1"} method function (line 14) | get function(){return this._identifierParts[0]} method filePath (line 14) | get filePath(){return this._identifierParts[1]??null} method lineNo (line 14) | get lineNo(){const e=this._identifierParts[2];return e?parseInt(e):null} method isSynthetic (line 14) | get isSynthetic(){return yn.includes(this.identifier)} method filePathShort (line 14) | get filePathShort(){return this.isSynthetic&&this.parent?this.parent.f... method isApplicationCode (line 14) | get isApplicationCode(){if(this.isSynthetic)return!1;const e=this.file... method proportionOfParent (line 14) | get proportionOfParent(){return this.parent?this.time/this.parent.time:1} method className (line 14) | get className(){return this.getAttributeValue(Tn)??""} method library (line 14) | get library(){const e=this.filePathShort;return e?/^[\\/.]*[^\\/.]*/.e... class En (line 14) | class En{constructor(e){T(this,"id");T(this,"rootFrame");T(this,"_frames... method constructor (line 14) | constructor(e){T(this,"id");T(this,"rootFrame");T(this,"_frames",[]);t... method addFrame (line 14) | addFrame(e){e.group&&e.group.removeFrame(e),this._frames.push(e),e.gro... method removeFrame (line 14) | removeFrame(e){if(e.group!==this)throw new Error("Frame not in group."... method frames (line 14) | get frames(){return this._frames} method exitFrames (line 14) | get exitFrames(){const e=[];for(const t of this.frames){let n=!1;for(c... method libraries (line 14) | get libraries(){const e=[];for(const t of this.frames){const n=t.libra... function rt (line 14) | function rt(i,e){const{replaceWith:t}=e,n=i.parent;if(!n)throw new Error... function kn (line 14) | function kn(i,e){if(i.parent!==e.parent)throw new Error("Both frames mus... function Mt (line 14) | function Mt(i,e){if(e&&i.children&&i.children.forEach(t=>{Mt(t,!0)}),i.g... function Ft (line 14) | function Ft(i,e){if(!i)return null;for(const t of i.children)Ft(t),t.fil... function Pt (line 14) | function Pt(i,e){if(!i)return null;for(const t of i.children)Pt(t),t.has... function Jt (line 14) | function Jt(i,e){if(!i)return null;const t={};for(const n of i.children.... function ei (line 14) | function ei(i,e){if(!i)return null;const t=e.hideRegex,n=e.showRegex;fun... function ti (line 14) | function ti(i,e,t=!0){if(!i)return null;let n=null;for(const s of i.chil... function ii (line 14) | function ii(i,e){return i?(i.children.length===1&&i.children[0].identifi... function ni (line 14) | function ni(i,e,t=null){if(!i)return null;t===null&&(t=i.time,t<=0&&(t=1... function si (line 14) | function si(i,e){if(!i)return null;const t=o=>en(o,c=>c.time),n=o=>{var ... function oi (line 14) | function oi(i,e){return i?(i.children.forEach(t=>oi(t)),i.group&&i.group... function Cn (line 14) | function Cn(i){let e,t,n;return t=new Kt({props:{frame:i[3],rootFrame:i[... function Mn (line 14) | function Mn(i){let e;return{c(){e=f("div"),e.innerHTML='
.001?"... function On (line 14) | function On(i,e){i.font=ai;const t=li(e)=="both"?140:70,n=i.measureText(... function xn (line 14) | function xn(i,e,t){let{f:n}=e,s,l;function r(o){return`th... method _assignLibraryOrder (line 14) | _assignLibraryOrder(){const t={};for(const s of this.frames){const r=s... method colorForLibraryIndex (line 14) | colorForLibraryIndex(t){if(this._colors[t]!==void 0)return this._color... method libraryIndexForFrame (line 14) | libraryIndexForFrame(t){this._libraryOrder||this._assignLibraryOrder()... method colorForFrame (line 14) | colorForFrame(t){const n=this.libraryIndexForFrame(t);return this.colo... method frameMaxT (line 14) | get frameMaxT(){return this._frameMaxT===void 0&&(this._frameMaxT=this... method maxYOffset (line 14) | get maxYOffset(){return Math.max(0,(this.maxDepth+1)*ci+lt*2+ui-this.h... method minZoom (line 14) | get minZoom(){return(this.width-2*Ie)/this.frameMaxT} method maxZoom (line 14) | get maxZoom(){return 6666666666666667e-8} method fitContents (line 14) | fitContents(){this.startT=0,this.zoom=this.minZoom,this.isZoomedIn=!1} method clampViewport (line 14) | clampViewport(){this.zoom({processo... class Yn (line 14) | class Yn extends he{constructor(e){super(),de(this,e,Un,qn,re,{session:2... method constructor (line 14) | constructor(e){super(),de(this,e,Un,qn,re,{session:2})} function Xn (line 14) | function Xn(i){let e,t,n=i[1].viewMode+"",s;return{c(){e=f("div"),t=I("U... function Gn (line 14) | function Gn(i){let e,t;return e=new Yn({props:{session:i[0]}}),{c(){we(e... function jn (line 14) | function jn(i){let e,t;return e=new Rn({props:{session:i[0]}}),{c(){we(e... function Zn (line 14) | function Zn(i){let e;return{c(){e=f("div"),e.innerHTML='
0&&e[0].endsWith(":")?e[0]:... function ts (line 14) | function ts(i,e){if(di(i)!=di(e))return i;const t=$e(i),n=$e(e);let s=0;... method render (line 14) | render(i,e){const t=new es(e);return new Jn({target:i,props:{session:t}})} FILE: pyinstrument/renderers/jsonrenderer.py function encode_bool (line 20) | def encode_bool(a_bool: bool): class JSONRenderer (line 24) | class JSONRenderer(FrameRenderer): method __init__ (line 31) | def __init__(self, **kwargs: Any): method render_frame (line 34) | def render_frame(self, frame: Frame | None): method render (line 65) | def render(self, session: Session): method default_processors (line 78) | def default_processors(self) -> ProcessorList: FILE: pyinstrument/renderers/pstatsrenderer.py class PstatsRenderer (line 19) | class PstatsRenderer(FrameRenderer): method __init__ (line 28) | def __init__(self, **kwargs: Any): method frame_key (line 31) | def frame_key(self, frame: Frame) -> FrameKey: method render_frame (line 34) | def render_frame(self, frame: Frame | None, stats: StatsDict) -> None: method render (line 77) | def render(self, session: Session): method default_processors (line 87) | def default_processors(self) -> ProcessorList: FILE: pyinstrument/renderers/session.py class SessionRenderer (line 7) | class SessionRenderer(Renderer): method __init__ (line 10) | def __init__(self, tree_format: bool = False): method render (line 14) | def render(self, session: Session) -> str: FILE: pyinstrument/renderers/speedscope.py class SpeedscopeFrame (line 18) | class SpeedscopeFrame: class SpeedscopeEventType (line 32) | class SpeedscopeEventType(Enum): class SpeedscopeEvent (line 40) | class SpeedscopeEvent: class SpeedscopeProfile (line 53) | class SpeedscopeProfile: class SpeedscopeFile (line 67) | class SpeedscopeFile: class SpeedscopeEncoder (line 84) | class SpeedscopeEncoder(json.JSONEncoder): method default (line 90) | def default(self, o: Any) -> Any: class SpeedscopeRenderer (line 117) | class SpeedscopeRenderer(FrameRenderer): method __init__ (line 130) | def __init__(self, **kwargs: Any): method render_frame (line 144) | def render_frame(self, frame: Frame | None) -> list[SpeedscopeEvent]: method render (line 209) | def render(self, session: Session): method default_processors (line 229) | def default_processors(self) -> ProcessorList: FILE: pyinstrument/session.py class Session (line 23) | class Session: method __init__ (line 24) | def __init__( method load (line 58) | def load(filename: PathOrStr) -> Session: method save (line 68) | def save(self, filename: PathOrStr) -> None: method to_json (line 77) | def to_json(self, include_frame_records: bool = True): method from_json (line 97) | def from_json(json_dict: dict[str, Any]): method combine (line 113) | def combine(session1: Session, session2: Session) -> Session: method current_sys_prefixes (line 144) | def current_sys_prefixes() -> list[str]: method root_frame (line 147) | def root_frame(self, trim_stem: bool = True) -> Frame | None: method _trim_stem (line 165) | def _trim_stem(self, frame: Frame): method shorten_path (line 187) | def shorten_path(self, path: str) -> str: method _resample_frame_records (line 218) | def _resample_frame_records( method resample (line 236) | def resample(self, interval: float) -> Session: FILE: pyinstrument/stack_sampler.py class StackSamplerSubscriber (line 32) | class StackSamplerSubscriber: method __init__ (line 33) | def __init__( class StackSampler (line 54) | class StackSampler: method __init__ (line 63) | def __init__(self) -> None: method subscribe (line 70) | def subscribe( method unsubscribe (line 100) | def unsubscribe(self, target: StackSamplerSubscriberTarget): method _update (line 115) | def _update(self): method _start_sampling (line 136) | def _start_sampling(self, interval: float, use_timing_thread: bool): method _stop_sampling (line 169) | def _stop_sampling(self): method _sample (line 174) | def _sample(self, frame: types.FrameType, event: str, arg: Any): method _timer (line 205) | def _timer(self): method _check_timing_overhead (line 211) | def _check_timing_overhead(self, interval: float, timer_type: TimerType): class SubscriberNotFound (line 273) | class SubscriberNotFound(Exception): function get_stack_sampler (line 277) | def get_stack_sampler() -> StackSampler: function build_call_stack (line 290) | def build_call_stack(frame: types.FrameType | None, event: str, arg: Any... class AsyncState (line 322) | class AsyncState(NamedTuple): function timing_overhead (line 344) | def timing_overhead() -> dict[TimerType, float]: FILE: pyinstrument/typing.py class _LiteralStr (line 9) | class _LiteralStr: method __getitem__ (line 10) | def __getitem__(self, values): function assert_never (line 15) | def assert_never(value: Any): FILE: pyinstrument/util.py function object_with_import_path (line 13) | def object_with_import_path(import_path: str) -> Any: function truncate (line 22) | def truncate(string: str, max_length: int) -> str: function deprecated (line 29) | def deprecated(func: Callable[..., Any], *args: Any, **kwargs: Any) -> Any: function deprecated_option (line 39) | def deprecated_option(option_name: str, message: str = "") -> Any: function file_supports_color (line 55) | def file_supports_color(file_obj: IO[AnyStr]) -> bool: function file_supports_unicode (line 70) | def file_supports_unicode(file_obj: IO[AnyStr]) -> bool: function file_is_a_tty (line 80) | def file_is_a_tty(file_obj: IO[AnyStr]) -> bool: function unwrap (line 84) | def unwrap(string: str) -> str: function format_float_with_sig_figs (line 90) | def format_float_with_sig_figs(value: float, sig_figs: int = 3, trim_zer... function strtobool (line 109) | def strtobool(val: str) -> bool: FILE: pyinstrument/vendor/appdirs.py function user_data_dir (line 63) | def user_data_dir(appname=None, appauthor=None, version=None, roaming=Fa... function site_data_dir (line 118) | def site_data_dir(appname=None, appauthor=None, version=None, multipath=... function user_config_dir (line 184) | def user_config_dir(appname=None, appauthor=None, version=None, roaming=... function site_config_dir (line 228) | def site_config_dir(appname=None, appauthor=None, version=None, multipat... function user_cache_dir (line 283) | def user_cache_dir(appname=None, appauthor=None, version=None, opinion=T... function user_state_dir (line 340) | def user_state_dir(appname=None, appauthor=None, version=None, roaming=F... function user_log_dir (line 382) | def user_log_dir(appname=None, appauthor=None, version=None, opinion=True): class AppDirs (line 433) | class AppDirs(object): method __init__ (line 435) | def __init__(self, appname=None, appauthor=None, version=None, method user_data_dir (line 444) | def user_data_dir(self): method site_data_dir (line 449) | def site_data_dir(self): method user_config_dir (line 454) | def user_config_dir(self): method site_config_dir (line 459) | def site_config_dir(self): method user_cache_dir (line 464) | def user_cache_dir(self): method user_state_dir (line 469) | def user_state_dir(self): method user_log_dir (line 474) | def user_log_dir(self): function _get_win_folder_from_registry (line 481) | def _get_win_folder_from_registry(csidl_name): function _get_win_folder_with_ctypes (line 505) | def _get_win_folder_with_ctypes(csidl_name): function _get_win_folder_with_jna (line 531) | def _get_win_folder_with_jna(csidl_name): FILE: pyinstrument/vendor/decorator.py function get_init (line 48) | def get_init(cls): function getfullargspec (line 55) | def getfullargspec(f): function get_init (line 59) | def get_init(cls): function iscoroutinefunction (line 66) | def iscoroutinefunction(f): class FunctionMaker (line 74) | class FunctionMaker(object): method __init__ (line 87) | def __init__(self, func=None, name=None, signature=None, method update (line 139) | def update(self, func, **kw): method make (line 156) | def make(self, src_templ, evaldict=None, addsource=False, **attrs): method create (line 192) | def create(cls, obj, body, evaldict, defaults=None, function decorate (line 219) | def decorate(func, caller, extras=()): function decorator (line 237) | def decorator(caller, _func=None): class ContextManager (line 282) | class ContextManager(_GeneratorContextManager): method __call__ (line 283) | def __call__(self, func): function __init__ (line 293) | def __init__(self, g, *a, **k): function __init__ (line 299) | def __init__(self, g, *a, **k): function contextmanager (line 306) | def contextmanager(func): function append (line 313) | def append(a, vancestors): function dispatch_on (line 331) | def dispatch_on(*dispatch_args): FILE: pyinstrument/vendor/keypath.py function value_at_keypath (line 38) | def value_at_keypath(obj: Any, keypath: str) -> Any: function set_value_at_keypath (line 62) | def set_value_at_keypath(obj: Any, keypath: str, val: Any): FILE: test/conftest.py function pytest_addoption (line 8) | def pytest_addoption(parser) -> None: function pytest_configure (line 20) | def pytest_configure(config): function pytest_collection_modifyitems (line 26) | def pytest_collection_modifyitems(config, items) -> None: function check_sampler_state (line 42) | def check_sampler_state(): FILE: test/fake_time_util.py class FakeClock (line 14) | class FakeClock: method __init__ (line 15) | def __init__(self) -> None: method get_time (line 18) | def get_time(self): method sleep (line 21) | def sleep(self, duration): function fake_time (line 26) | def fake_time(fake_clock=None): class FakeClockAsyncio (line 37) | class FakeClockAsyncio: method __init__ (line 42) | def __init__(self) -> None: method get_time (line 45) | def get_time(self): method sleep (line 48) | def sleep(self, duration): method _virtual_select (line 51) | def _virtual_select(self, orig_select, timeout): function fake_time_asyncio (line 57) | def fake_time_asyncio(loop=None): class FakeClockTrio (line 75) | class FakeClockTrio: method __init__ (line 76) | def __init__(self, clock: "MockClock") -> None: method get_time (line 79) | def get_time(self): method sleep (line 82) | def sleep(self, duration): function fake_time_trio (line 87) | def fake_time_trio(): FILE: test/low_level/test_context.py function test_context_type (line 14) | def test_context_type(setstatprofile): function test_context_tracking (line 26) | def test_context_tracking(setstatprofile): FILE: test/low_level/test_custom_timer.py class CallCounter (line 6) | class CallCounter: method __init__ (line 7) | def __init__(self) -> None: method __call__ (line 10) | def __call__(self, *args: Any, **kwds: Any) -> Any: function test_increment (line 15) | def test_increment(setstatprofile): FILE: test/low_level/test_floatclock.py function test_floatclock (line 15) | def test_floatclock(): function test_is_in_seconds (line 22) | def test_is_in_seconds(): FILE: test/low_level/test_frame_info.py class AClass (line 9) | class AClass: method get_frame_info_for_a_method (line 10) | def get_frame_info_for_a_method(self, getter_function, del_local): method get_frame_info_with_cell_variable (line 17) | def get_frame_info_with_cell_variable(self, getter_function, del_local): method get_frame_info_for_a_class_method (line 31) | def get_frame_info_for_a_class_method(cls, getter_function, del_local): method get_frame_info_for_a_class_method_where_cls_is_reassigned (line 39) | def get_frame_info_for_a_class_method_where_cls_is_reassigned(cls, get... function test_frame_info (line 48) | def test_frame_info(): function test_frame_info_hide_true (line 55) | def test_frame_info_hide_true(): function test_frame_info_hide_false (line 64) | def test_frame_info_hide_false(): function test_frame_info_with_classes (line 92) | def test_frame_info_with_classes(test_function, del_local): FILE: test/low_level/test_setstatprofile.py class CallCounter (line 11) | class CallCounter: method __init__ (line 12) | def __init__(self) -> None: method __call__ (line 15) | def __call__(self, *args: Any, **kwds: Any) -> Any: function test_100ms (line 21) | def test_100ms(setstatprofile): function test_10ms (line 31) | def test_10ms(setstatprofile): function test_internal_object_compatibility (line 40) | def test_internal_object_compatibility(setstatprofile): FILE: test/low_level/test_threaded.py class CallCounter (line 15) | class CallCounter: method __init__ (line 16) | def __init__(self, thread) -> None: method __call__ (line 20) | def __call__(self, *args: Any, **kwds: Any) -> Any: function test_threaded (line 25) | def test_threaded(): FILE: test/low_level/test_timing_thread.py function test (line 48) | def test(): function test_max_subscribers (line 87) | def test_max_subscribers(): FILE: test/test_cmdline.py class TestCommandLine (line 26) | class TestCommandLine: method _suppress_warnings (line 28) | def _suppress_warnings(self, monkeypatch: pytest.MonkeyPatch): method test_command_line (line 31) | def test_command_line(self, pyinstrument_invocation, tmp_path: Path): method test_module_running (line 41) | def test_module_running(self, pyinstrument_invocation, tmp_path: Path): method test_single_file_module_running (line 53) | def test_single_file_module_running(self, pyinstrument_invocation, tmp... method test_running_yourself_as_module (line 64) | def test_running_yourself_as_module(self, pyinstrument_invocation): method test_path (line 69) | def test_path(self, pyinstrument_invocation, tmp_path: Path, monkeypat... method test_program_passed_as_string (line 83) | def test_program_passed_as_string(self, pyinstrument_invocation, tmp_p... method test_script_execution_details (line 114) | def test_script_execution_details(self, pyinstrument_invocation, tmp_p... method test_module_execution_details (line 135) | def test_module_execution_details(self, pyinstrument_invocation, tmp_p... method test_path_execution_details (line 160) | def test_path_execution_details(self, pyinstrument_invocation, tmp_pat... method test_program_passed_as_string_execution_details (line 193) | def test_program_passed_as_string_execution_details( method test_session_save_and_load (line 214) | def test_session_save_and_load(self, pyinstrument_invocation, tmp_path... method test_interval (line 239) | def test_interval(self, pyinstrument_invocation, tmp_path: Path): method test_invocation_machinery_is_trimmed (line 255) | def test_invocation_machinery_is_trimmed(self, pyinstrument_invocation... method test_target_description (line 280) | def test_target_description(self, pyinstrument_invocation, tmp_path: P... method test_target_description_format (line 295) | def test_target_description_format(self, pyinstrument_invocation, tmp_... method test_target_description_format_errors (line 310) | def test_target_description_format_errors(self, pyinstrument_invocatio... method test_binary_output (line 342) | def test_binary_output(self, pyinstrument_invocation, tmp_path: Path): method test_program_exit_code (line 366) | def test_program_exit_code(self, pyinstrument_invocation, tmp_path: Pa... FILE: test/test_cmdline_main.py class FakeRenderer (line 13) | class FakeRenderer(FrameRenderer): method __init__ (line 14) | def __init__(self, time=None, **kwargs): method default_processors (line 21) | def default_processors(self): method render (line 27) | def render(self, session) -> str: function test_renderer_option (line 31) | def test_renderer_option(monkeypatch: pytest.MonkeyPatch, tmp_path: Path): function test_json_renderer_option (line 55) | def test_json_renderer_option(monkeypatch: pytest.MonkeyPatch, tmp_path:... function test_dotted_renderer_option (line 79) | def test_dotted_renderer_option(monkeypatch: pytest.MonkeyPatch, tmp_pat... FILE: test/test_context_manager.py function test_profile_context_decorator (line 9) | def test_profile_context_decorator(capfd): function test_profile_context_manager (line 24) | def test_profile_context_manager(capfd): FILE: test/test_ipython_magic.py function test_magics (line 38) | def test_magics(ip): function test_magic_empty_line (line 70) | def test_magic_empty_line(ip): function test_magic_no_variable_expansion (line 76) | def test_magic_no_variable_expansion(ip, capsys): function test_pyinstrument_handles_interrupt_silently (line 85) | def test_pyinstrument_handles_interrupt_silently(ip, capsys): function test_async_cell_with_pyinstrument (line 101) | def test_async_cell_with_pyinstrument(ip, capsys): function session_ip (line 124) | def session_ip(): function _interrupt_after_1s (line 130) | def _interrupt_after_1s(): function ip (line 136) | def ip(session_ip): FILE: test/test_overflow.py function recurse (line 19) | def recurse(depth): function current_stack_depth (line 27) | def current_stack_depth(): function deep_profiler_session (line 40) | def deep_profiler_session(): function test_console (line 55) | def test_console(deep_profiler_session): function test_html (line 59) | def test_html(deep_profiler_session): function test_json (line 63) | def test_json(deep_profiler_session): function test_speedscope (line 67) | def test_speedscope(deep_profiler_session): function test_prof (line 71) | def test_prof(deep_profiler_session): FILE: test/test_processors.py function self_time_frame (line 21) | def self_time_frame(time): function test_frame_passthrough_none (line 25) | def test_frame_passthrough_none(): function test_remove_importlib (line 30) | def test_remove_importlib(): function test_remove_hidden (line 84) | def test_remove_hidden(): function test_merge_consecutive_self_time (line 134) | def test_merge_consecutive_self_time(): function test_aggregate_repeated_calls (line 171) | def test_aggregate_repeated_calls(): function test_remove_irrelevant_nodes (line 219) | def test_remove_irrelevant_nodes(): function test_remove_unnecessary_self_time_nodes (line 259) | def test_remove_unnecessary_self_time_nodes(): function test_group_library_frames_processor (line 300) | def test_group_library_frames_processor(monkeypatch): FILE: test/test_profiler.py function long_function_a (line 22) | def long_function_a(): function long_function_b (line 26) | def long_function_b(): class ClassWithMethods (line 30) | class ClassWithMethods: method long_method (line 31) | def long_method(self): method long_static_method (line 35) | def long_static_method(): method long_class_method (line 39) | def long_class_method(cls): function test_collapses_multiple_calls_by_default (line 46) | def test_collapses_multiple_calls_by_default(): function test_profiler_retains_multiple_calls (line 72) | def test_profiler_retains_multiple_calls(): function test_two_functions (line 94) | def test_two_functions(): function test_class_methods (line 126) | def test_class_methods(): function test_context_manager (line 156) | def test_context_manager(): function test_json_output (line 169) | def test_json_output(): function test_speedscope_output (line 186) | def test_speedscope_output(): function test_empty_profile (line 310) | def test_empty_profile(): function test_state_management (line 317) | def test_state_management(): function test_profiler_convenience_methods_have_all_options_available (line 369) | def test_profiler_convenience_methods_have_all_options_available( function test_profiler_raises_on_double_subscribe (line 401) | def test_profiler_raises_on_double_subscribe(): FILE: test/test_profiler_async.py function tidy_up_stack_sampler (line 21) | def tidy_up_stack_sampler(): function test_sleep (line 36) | async def test_sleep(): function test_sleep_trio (line 59) | def test_sleep_trio(): function test_profiler_task_isolation (line 87) | def test_profiler_task_isolation(engine): function test_greenlet (line 178) | def test_greenlet(): function test_strict_with_greenlet (line 210) | def test_strict_with_greenlet(): FILE: test/test_pstats_renderer.py function a (line 14) | def a(): function b (line 19) | def b(): function c (line 23) | def c(): function d (line 27) | def d(): function e (line 31) | def e(): function profiler_session (line 36) | def profiler_session(): function test_pstats_renderer (line 47) | def test_pstats_renderer(profiler_session, tmp_path): function test_round_trip_encoding_of_binary_data (line 89) | def test_round_trip_encoding_of_binary_data(tmp_path: Path): function sleep_and_busy_wait (line 104) | def sleep_and_busy_wait(clock: FakeClock): function test_sum_of_tottime (line 110) | def test_sum_of_tottime(tmp_path): FILE: test/test_renderers.py function a (line 33) | def a(): function b (line 38) | def b(): function c (line 42) | def c(): function d (line 46) | def d(): function e (line 50) | def e(): function profiler_session (line 55) | def profiler_session(): function test_empty_profile (line 70) | def test_empty_profile(frame_renderer_class: type[renderers.FrameRendere... function test_timeline_doesnt_crash (line 77) | def test_timeline_doesnt_crash( function test_show_all_doesnt_crash (line 85) | def test_show_all_doesnt_crash( function test_console_renderer_flat_doesnt_crash (line 93) | def test_console_renderer_flat_doesnt_crash(profiler_session, flat_time): function test_html_renderer_resampling (line 98) | def test_html_renderer_resampling(capsys): FILE: test/test_stack_sampler.py class SampleCounter (line 12) | class SampleCounter: method sample (line 15) | def sample(self, stack, time, async_state): function test_create (line 19) | def test_create(): function test_get_samples (line 28) | def test_get_samples(): function test_multiple_samplers (line 52) | def test_multiple_samplers(): function test_multiple_samplers_async_error (line 79) | def test_multiple_samplers_async_error(): function test_multiple_contexts (line 95) | def test_multiple_contexts(): function test_same_callback_twice_error (line 133) | def test_same_callback_twice_error(): FILE: test/test_threading.py function test_profiler_access_from_multiple_threads (line 12) | def test_profiler_access_from_multiple_threads(): FILE: test/util.py function assert_never (line 22) | def assert_never(x: NoReturn) -> NoReturn: function do_nothing (line 26) | def do_nothing(): function busy_wait (line 30) | def busy_wait(duration): function walk_frames (line 37) | def walk_frames(frame: Frame) -> Generator[Frame, None, None]: function first (line 47) | def first(iterator: Iterator[T]) -> Optional[T]: function calculate_frame_tree_times (line 54) | def calculate_frame_tree_times(frame: Frame): function dummy_session (line 91) | def dummy_session() -> Session: function tidy_up_profiler_state_on_fail (line 107) | def tidy_up_profiler_state_on_fail(func: Callable) -> Callable[[], None]: