comparison src/luan/impl/LuanImpl.java @ 1542:d4407e8de707

disallow duplicates in table constructor
author Franklin Schmidt <fschmidt@gmail.com>
date Sun, 20 Sep 2020 15:53:58 -0600
parents d9a5405a3102
children b89212fd04b5
comparison
equal deleted inserted replaced
1541:dc23c96f5021 1542:d4407e8de707
234 for( Object fld : a ) { 234 for( Object fld : a ) {
235 if( fld instanceof TableField ) { 235 if( fld instanceof TableField ) {
236 TableField tblFld = (TableField)fld; 236 TableField tblFld = (TableField)fld;
237 Object key = tblFld.key; 237 Object key = tblFld.key;
238 Object value = tblFld.value; 238 Object value = tblFld.value;
239 if( key != null && value != null ) 239 if( key != null && value != null ) {
240 table.rawPut(key,value); 240 if( table.rawPut(key,value) != null )
241 throw new LuanException("duplicate key in table constructor: "+key);
242 }
241 } else { 243 } else {
242 i++; 244 i++;
243 table.rawPut(i,fld); 245 if( table.rawPut(i,fld) != null )
246 throw new LuanException("duplicate key in table constructor: "+i);
244 } 247 }
245 } 248 }
246 return table; 249 return table;
247 } 250 }
248 251