Cargar una tabla desde texto serializado (table.load_string)
Declaración
tabla_asociativa = table.load_string(texto_tabla)
Parámetros
- texto_tabla
Tipo texto; texto de la estructura de árbol serializada de una tabla. Solo puede contener datos estáticos y no puede contener código dinámico
Valor devuelto
- tabla_asociativa
Tipo tabla o nil; devuelve la estructura de la tabla si la carga tiene éxito y nil si falla
Descripción
Convierte una descripción textual de una estructura de árbol en un objeto tabla.
En cierta medida, table.load_string puede considerarse la función inversa de table.deep_dump; su utilidad real depende de si existen referencias circulares o tipos de referencia que no sean tablas.
A diferencia de load, esta función no ejecuta el código del texto, sino que solo lee sus datos estáticos.
El ejemplo siguiente contiene código ejecutable; después de ejecutarlo,bes nil (el código no se ejecuta).
b = table.load_string[[ {
a = os.execute('reboot'), -- este código no se ejecutará y se devolverá nil
} ]]
Ejemplo
local t = table.load_string[[ {
a = 1,
b = 2,
c = 3,
} ]]
sys.alert(t.b)
Nota: el código anterior utiliza la función sys.alert, que no pertenece a este capítulo.