|
@@ -4685,7 +4685,10 @@ information about a function or an activation record.
|
|
|
@Lid{lua_getstack} fills only the private part
|
|
|
of this structure, for later use.
|
|
|
To fill the other fields of @Lid{lua_Debug} with useful information,
|
|
|
-you must call @Lid{lua_getinfo}.
|
|
|
+you must call @Lid{lua_getinfo} with an appropriate parameter.
|
|
|
+(Specifically, to get a field,
|
|
|
+you must add the letter between parentheses in the field's comment
|
|
|
+to the parameter @id{what} of @Lid{lua_getinfo}.)
|
|
|
|
|
|
The fields of @Lid{lua_Debug} have the following meaning:
|
|
|
@description{
|
|
@@ -4838,10 +4841,24 @@ printf("%d\n", ar.linedefined);
|
|
|
|
|
|
Each character in the string @id{what}
|
|
|
selects some fields of the structure @id{ar} to be filled or
|
|
|
-a value to be pushed on the stack:
|
|
|
+a value to be pushed on the stack.
|
|
|
+(These characters are also documented in the declaration of
|
|
|
+the structure @Lid{lua_Debug},
|
|
|
+between parentheses in the comments following each field.)
|
|
|
@description{
|
|
|
|
|
|
-@item{@Char{n}| fills in the field @id{name} and @id{namewhat};
|
|
|
+@item{@Char{f}|
|
|
|
+pushes onto the stack the function that is
|
|
|
+running at the given level;
|
|
|
+}
|
|
|
+
|
|
|
+@item{@Char{l}| fills in the field @id{currentline};
|
|
|
+}
|
|
|
+
|
|
|
+@item{@Char{n}| fills in the fields @id{name} and @id{namewhat};
|
|
|
+}
|
|
|
+
|
|
|
+@item{@Char{r}| fills in the fields @id{ftransfer} and @id{ntransfer};
|
|
|
}
|
|
|
|
|
|
@item{@Char{S}|
|
|
@@ -4849,9 +4866,6 @@ fills in the fields @id{source}, @id{short_src},
|
|
|
@id{linedefined}, @id{lastlinedefined}, and @id{what};
|
|
|
}
|
|
|
|
|
|
-@item{@Char{l}| fills in the field @id{currentline};
|
|
|
-}
|
|
|
-
|
|
|
@item{@Char{t}| fills in the field @id{istailcall};
|
|
|
}
|
|
|
|
|
@@ -4859,21 +4873,13 @@ fills in the fields @id{source}, @id{short_src},
|
|
|
@id{nups}, @id{nparams}, and @id{isvararg};
|
|
|
}
|
|
|
|
|
|
-@item{@Char{f}|
|
|
|
-pushes onto the stack the function that is
|
|
|
-running at the given level;
|
|
|
-}
|
|
|
-
|
|
|
@item{@Char{L}|
|
|
|
-pushes onto the stack a table whose indices are the
|
|
|
-numbers of the lines that are valid on the function.
|
|
|
-(A @emph{valid line} is a line with some associated code,
|
|
|
-that is, a line where you can put a break point.
|
|
|
-Non-valid lines include empty lines and comments.)
|
|
|
-
|
|
|
+pushes onto the stack a table whose indices are
|
|
|
+the lines on the function with some associated code,
|
|
|
+that is, the lines where you can put a break point.
|
|
|
+(Lines with no code include empty lines and comments.)
|
|
|
If this option is given together with option @Char{f},
|
|
|
its table is pushed after the function.
|
|
|
-
|
|
|
This is the only option that can raise a memory error.
|
|
|
}
|
|
|
|