Go to the first, previous, next, last section, table of contents.


JOB_STACKFRAME_USER

JOB_STACKFRAME_USER stackframes in context will look as follows:

  job_RunState.l   ->   size in bytes of below stackframe
                        JOB_STACKFRAME_USER
                        previous actingUser value
                        size in bytes of above stackframe

                        size in bytes of below stackframe
                        JOB_STACKFRAME_NORMAL   
                        local_variable_N
			...
			local_variable_1
  job_RunState.v   ->	local_variable_0
                        compiledFunction for this frame.
                        programCounter for this frame.
                        size in bytes of above stackframe

These stackframes are pushed to mark the scope of an as-me{...} or as-user{...} clause, during which the @$s.actingUser value is changed, and and save the old @$s.actingUser value for later restoration.

A full getStackframe[ USER frame result looks like:

:owner             object
:kind              :user
:actingUser       object


Go to the first, previous, next, last section, table of contents.