[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Table generation issue
- From: Steve Heller <steve@...>
- Date: Mon, 20 Nov 2006 20:23:42 -0600
I'll give that a try tomorrow at work. Thanks!
On Mon, 20 Nov 2006 23:49:31 -0200, Romulo Bahiense
<romulo@icontroller.com.br> wrote:
>I believe the problem is not table allocation, but index access and
>length calculation ('#' operator).
>
>Try this one:
>
>function createFieldDataEntriesForOneDataGenerator( dataGenerator )
>
> local data = dataGenerator()
>
> local iSubTable = 0
> local iSubTableBlock = 0
>
> local subTable = {}
> local subTableBlock = {}
>
> local subTableType
>
> for i, element in ipairs(data) do
> local a, b, c = element[ 1 ], element[ 2 ], element[ 3 ]
> if a == "<type>" then
> subTableType = b
> elseif a == "</type>" then
> -- do nothing
> elseif a == "<block>" then
> subTableBlock = {Number=b,Dup=c}
> elseif a == "</block>" then
> iSubTable = iSubTable + 1
> subTable[iSubTable] = subTableBlock
> else
> if trim(b) ~= "" then
> iSubTableBlock = iSubTableBlock + 1
> subTableBlock[ iSubTableBlock ] = {a,b}
> end
> end
> end
>
> return subTable, subTableType
>end
>
>Note that, in this code, 'data[i]' is the same as 'element', because
>ipairs return key and value.
>
>--rb
Steve