Wed, 16 Feb 2011 20:29:33 +0000
There are no secrets better kept than the secrets that everybody guesses.
0
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
1 | local public = {}; |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
2 | |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
3 | local aeslua = require("aeslua"); |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
4 | aeslua.buffer = public; |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
5 | |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
6 | function public.new () |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
7 | return {}; |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
8 | end |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
9 | |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
10 | function public.addString (stack, s) |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
11 | table.insert(stack, s) |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
12 | for i = #stack - 1, 1, -1 do |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
13 | if #stack[i] > #stack[i+1] then |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
14 | break; |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
15 | end |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
16 | stack[i] = stack[i] .. table.remove(stack); |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
17 | end |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
18 | end |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
19 | |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
20 | function public.toString (stack) |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
21 | for i = #stack - 1, 1, -1 do |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
22 | stack[i] = stack[i] .. table.remove(stack); |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
23 | end |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
24 | return stack[1]; |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
25 | end |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
26 | |
598d09faf89c
There are no secrets better kept than the secrets that everybody guesses.
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
27 | return public; |