+inline-end
(cf callFrame, fn LValue, meta bool)
| 1014 | } // +inline-end |
| 1015 | |
| 1016 | func (ls *LState) pushCallFrame(cf callFrame, fn LValue, meta bool) { // +inline-start |
| 1017 | if meta { |
| 1018 | cf.NArgs++ |
| 1019 | ls.reg.Insert(fn, cf.LocalBase) |
| 1020 | } |
| 1021 | if cf.Fn == nil { |
| 1022 | ls.RaiseError("attempt to call a non-function object") |
| 1023 | } |
| 1024 | if ls.stack.IsFull() { |
| 1025 | ls.RaiseError("stack overflow") |
| 1026 | } |
| 1027 | ls.stack.Push(cf) |
| 1028 | newcf := ls.stack.Last() |
| 1029 | // +inline-call ls.initCallFrame newcf |
| 1030 | ls.currentFrame = newcf |
| 1031 | } // +inline-end |
| 1032 | |
| 1033 | func (ls *LState) callR(nargs, nret, rbase int) { |
| 1034 | base := ls.reg.Top() - nargs - 1 |