Function Function Variables Map at time s

variables that will be in scope inside a function call.

Format:

Function Variables Map at time s

Input:

number s -

Output:

list - None

Conditional properties that reference this function:

  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params
    • Parameters List at time t = None
    • Value Stack at time t = [ values, v_stack ]

    then Function Variables Map at time (t + 1) = [ ]

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ Python constructor with name: class_name and arguments: args, ys ], rest ] ]
    • Value Stack at time t = [ evaluated, stack ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is "__init__" = params
    • Parameters List at time t = None

    then Function Variables Map at time (t + 1) = [ ]

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ Python constructor with name: class_name and arguments: args, ys ], rest ] ]
    • Function Variables Map at time t = [ ]
    • Parameters List at time t = [ self, p_rest ]

    then Function Variables Map at time (t + 1) = [ entry self: (Python reference (length of stack (Python Object Store at time t))), [ ] ]

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ Python constructor with name: class_name and arguments: args, ys ], rest ] ]
    • Function Variables Map at time t = [ ]
    • Parameters List at time t = [ self, p_rest ]

    then Python Object Store at time (t + 1) = result of appending (Python object: [ entry "__class_name__": class_name, [ ] ]) to (Python Object Store at time t)

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ Python constructor with name: class_name and arguments: args, ys ], rest ] ]
    • Function Variables Map at time t = [ ]
    • Parameters List at time t = [ self, p_rest ]

    then Parameters List at time (t + 1) = p_rest

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ Python constructor with name: class_name and arguments: args, ys ], rest ] ]
    • Function Variables Map at time t = [ ]
    • Parameters List at time t = [ self, p_rest ]

    then Argument Values at time (t + 1) = Argument Values at time t

    (link)
  • if expression state at time t = "call_function_begin", then Function Variables Map at time (t + 1) = [ ] (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • Parameters List at time t = [ var, frest ]
    • Argument Values at time t = [ value, vrest ]

    then Function Variables Map at time (t + 1) = result of storing value at key: var in map: (Function Variables Map at time t)

    (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • Parameters List at time t = [ ]

    then Variables Map at time (t + 1) = Function Variables Map at time t

    (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • the expression at time t = Python constructor with name: class_name and arguments: args
    • Function Variables Map at time t = [ ]
    • Parameters List at time t = [ self, p_rest ]

    then Function Variables Map at time (t + 1) = [ entry self: (Python reference (length of stack (Python Object Store at time t))), [ ] ]

    (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • the expression at time t = Python constructor with name: class_name and arguments: args
    • Function Variables Map at time t = [ ]
    • Parameters List at time t = [ self, p_rest ]

    then Python Object Store at time (t + 1) = result of appending (Python object: [ entry "__class_name__": class_name, [ ] ]) to (Python Object Store at time t)

    (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • the expression at time t = Python constructor with name: class_name and arguments: args
    • Function Variables Map at time t = [ ]
    • Parameters List at time t = [ self, p_rest ]

    then Parameters List at time (t + 1) = p_rest

    (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • the expression at time t = Python constructor with name: class_name and arguments: args
    • Function Variables Map at time t = [ ]
    • Parameters List at time t = [ self, p_rest ]

    then Argument Values at time (t + 1) = Argument Values at time t

    (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • the expression at time t = Python constructor with name: class_name and arguments: args
    • Function Variables Map at time t = [ ]
    • Parameters List at time t = [ self, p_rest ]

    then expression state at time (t + 1) = "call_build_args"

    (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • the expression at time t = Python constructor with name: class_name and arguments: args
    • Function Variables Map at time t = [ ]
    • Parameters List at time t = [ self, p_rest ]

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • the expression at time t = Python constructor with name: class_name and arguments: args
    • Function Variables Map at time t = [ ]
    • Parameters List at time t = [ self, p_rest ]

    then stack at time (t + 1) = stack at time t

    (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • the expression at time t = Python constructor with name: class_name and arguments: args
    • Function Variables Map at time t = [ ]
    • Parameters List at time t = [ self, p_rest ]

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ function call with name: name and arguments: args, ys ], rest ] ]
    • Value Stack at time t = [ values, v_rest ]
    • there is a function named name with parameters params at line line
    • Parameters List at time t = None

    then Function Variables Map at time (t + 1) = [ ]

    (link)
  • if the following are true:
    • Parameters List at time t = [ var, frest ]
    • Argument Values at time t = [ value, vrest ]

    then Function Variables Map at time (t + 1) = result of storing value at key: var in map: (Function Variables Map at time t)

    (link)
  • if Parameters List at time t = [ ], then Variables Map at time (t + 1) = Function Variables Map at time t (link)


Comments

Please log in to add comments