[NTG-context] Merging two lua tables

Aditya Mahajan adityam at umich.edu
Mon Aug 29 14:29:13 CEST 2022


On Mon, 29 Aug 2022, Aditya Mahajan via ntg-context wrote:

> Hi,
> 
> How do I merge two lua tables? I believe that table.merge or table.merged should do the trick, but I cannot figure out how to use them. 
> 
> ``` 
> local t1 = { 1, 2 }
> local t2 = { 8, 9 }
> 
> local m1 = {}
> table.merge(m1,t1, t2)
> table.print(m1)
> 
> local m2 = table.merged(t1, t2)
> table.print(m2)
> ```
> 
> Processing the file with context filename shows that both m1 and m2 are {8, 9}. What am I missing. 

Looking at the code, I see what is happening. table.merge(d) assume that the tables are key-value tables so the keys of the first table are silently overwritten by the send. I guess, I'll have to write my own function to merge "array" tables. 

Aditya


More information about the ntg-context mailing list