Creates a new empty table and pushes it onto the stack. Parameter elements is a hint for how many
elements the table will have as a sequence; parameter fields is a hint for how many other elements the
table will have. Lua may use these hints to preallocate memory for the new table. This preallocation may
help performance when you know in advance how many elements the table will have.
Pushes onto the stack the value t[key], where t is the value at the given index. As in Lua, this function may
trigger a metamethod for the “index” event.
Registers all functions in the entries into the table on the top of the stack. When upvalues is not zero,
all functions are created with upvalues upvalues, initialized with copies of the upvalues values previously
pushed on the stack on top of the library table. These values are popped from the stack after the registration.