52 { |
52 { |
53 LmMessageNode *node = luaL_checkLmMessageNode (L, 1); |
53 LmMessageNode *node = luaL_checkLmMessageNode (L, 1); |
54 LmMessageNode *prev = node->prev; |
54 LmMessageNode *prev = node->prev; |
55 if (prev) |
55 if (prev) |
56 bless_lm_node (L, prev); |
56 bless_lm_node (L, prev); |
57 else |
|
58 lua_pushnil (L); |
|
59 return 1; |
|
60 } |
|
61 |
|
62 /// message_node:children |
|
63 /// Gets first child node (raw access used). |
|
64 /// Note: this method is deprecated and soon will be removed. |
|
65 /// Use child without arguments instead. |
|
66 /// R: lm message node object or nil |
|
67 int children_lm_node (lua_State *L) |
|
68 { |
|
69 LmMessageNode *node = luaL_checkLmMessageNode (L, 1); |
|
70 LmMessageNode *child = node->children; |
|
71 if (child) |
|
72 bless_lm_node (L, child); |
|
73 else |
57 else |
74 lua_pushnil (L); |
58 lua_pushnil (L); |
75 return 1; |
59 return 1; |
76 } |
60 } |
77 |
61 |
243 |
227 |
244 static const luaL_Reg reg_m_lm_node[] = { |
228 static const luaL_Reg reg_m_lm_node[] = { |
245 { "name", name_lm_node }, |
229 { "name", name_lm_node }, |
246 { "next", next_lm_node }, |
230 { "next", next_lm_node }, |
247 { "prev", prev_lm_node }, |
231 { "prev", prev_lm_node }, |
248 { "children", children_lm_node }, |
|
249 { "parent", parent_lm_node }, |
232 { "parent", parent_lm_node }, |
250 { "value", value_lm_node }, |
233 { "value", value_lm_node }, |
251 { "child", child_lm_node }, |
234 { "child", child_lm_node }, |
252 { "find_child", find_child_lm_node }, |
235 { "find_child", find_child_lm_node }, |
253 { "attribute", attribute_lm_node }, |
236 { "attribute", attribute_lm_node }, |