LibDogTag-3.0-r65468

Details

  • Filename
    LibDogTag-3.0-r65468.zip
  • Uploaded by
  • Uploaded
    Mar 23, 2008
  • Size
    83.60 KB
  • Downloads
    141
  • MD5
    2c75ab0544cb2484d311958eba5cf23c

Supported WoW Retail Versions

  • 2.3.3

Changelog

------------------------------------------------------------------------
r65468 | ckknight | 2008-03-23 13:43:18 -0400 (Sun, 23 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua

LibDogTag-3.0 - fix issues with AddonFinders
- trim leading and trailing spaces
------------------------------------------------------------------------
r65454 | ckknight | 2008-03-23 12:06:25 -0400 (Sun, 23 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add more options to the compilation step process
------------------------------------------------------------------------
r65450 | ckknight | 2008-03-23 11:40:29 -0400 (Sun, 23 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add newlines where appropriate to their proper places in the compilation code. This should make error messages a lot more accurate.
------------------------------------------------------------------------
r65423 | ckknight | 2008-03-23 03:35:21 -0400 (Sun, 23 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - allow if statements within other if statements without requiring grouping brackets. This also allows for [if 1 then 2 else if 3 then 4 else 5]-style statements.
------------------------------------------------------------------------
r65422 | ckknight | 2008-03-23 03:14:10 -0400 (Sun, 23 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - also clear the stored key on if statements
------------------------------------------------------------------------
r65421 | ckknight | 2008-03-23 03:11:53 -0400 (Sun, 23 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - fix an issue with the and type not clearing properly
------------------------------------------------------------------------
r65419 | ckknight | 2008-03-23 02:49:17 -0400 (Sun, 23 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add another test
------------------------------------------------------------------------
r65418 | ckknight | 2008-03-23 02:45:37 -0400 (Sun, 23 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - fix some bugs in the compilation process, specifically in the treatment of arguments and static value in if statements
- make :CleanCode not crap out if there's a syntax error
------------------------------------------------------------------------
r65413 | ckknight | 2008-03-23 00:37:29 -0400 (Sun, 23 Mar 2008) | 5 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - fix a nil bug
- compile in a safer manner
- handle kwargs in aliases in a way that doesn't fail
- add :UpdateFontString and :UpdateAllForFrame

------------------------------------------------------------------------
r65403 | ckknight | 2008-03-22 22:36:30 -0400 (Sat, 22 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua

LibDogTag-3.0 - fix a weird issue with nested strings
------------------------------------------------------------------------
r65402 | ckknight | 2008-03-22 22:22:19 -0400 (Sat, 22 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua

LibDogTag-3.0 - try to load requested libraries automatically
------------------------------------------------------------------------
r65394 | ckknight | 2008-03-22 20:02:54 -0400 (Sat, 22 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Events.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add ability to register for events with multiple arguments.
------------------------------------------------------------------------
r65357 | ckknight | 2008-03-22 12:31:45 -0400 (Sat, 22 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Events.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua

LibDogTag-3.0 - add some helper functions for sublibraries
------------------------------------------------------------------------
r65119 | ckknight | 2008-03-19 18:27:15 -0400 (Wed, 19 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Categories/Misc.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - change the way FormatDuration works slightly
------------------------------------------------------------------------
r65118 | ckknight | 2008-03-19 18:13:01 -0400 (Wed, 19 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Categories/Misc.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add FormatDuration tag.
------------------------------------------------------------------------
r65116 | ckknight | 2008-03-19 17:17:31 -0400 (Wed, 19 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - optimization for dynamic functions
------------------------------------------------------------------------
r65106 | ckknight | 2008-03-19 14:59:40 -0400 (Wed, 19 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add ability to register tags that have functions which return other functions (good for optional library support)
------------------------------------------------------------------------
r65104 | ckknight | 2008-03-19 14:08:42 -0400 (Wed, 19 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Helpers.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - plug a few memory leaks, now every single table in the testsuite is accounted for.
------------------------------------------------------------------------
r65092 | ckknight | 2008-03-19 11:45:30 -0400 (Wed, 19 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Helpers.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - fix a memory leak with static functions
------------------------------------------------------------------------
r65066 | ckknight | 2008-03-19 05:12:09 -0400 (Wed, 19 Mar 2008) | 6 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Categories/Math.lua
   M /trunk/LibDogTag-3.0/Categories/Misc.lua
   M /trunk/LibDogTag-3.0/Categories/Operators.lua
   M /trunk/LibDogTag-3.0/Categories/TextManip.lua
   M /trunk/LibDogTag-3.0/Cleanup.lua
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - (following changes cut CPU usage roughly 25% and memory usage roughly 20%
- instead of registering tags as strings, they will be registered as functions.
- add ability to mark tags as static, which means if all args are literal or static (or there are no args), then the function will be run on compiletime rather than runtime
- remove number flattening in parser (e.g. 1/4 => 0.25)
- remove globals field and FakeGlobal system
- make a lot of error messages better
------------------------------------------------------------------------
r65020 | ckknight | 2008-03-18 15:42:33 -0400 (Tue, 18 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Categories/Misc.lua
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add Format tag, acts the same as lua's format function, errors are shown to the user.
- make sure that string in non-standard number formats such as "001" or "1.00" do not turn into numbers, so that users can format their numbers the way they want and appear the way they want.
------------------------------------------------------------------------
r64763 | ckknight | 2008-03-16 17:45:37 -0400 (Sun, 16 Mar 2008) | 1 line
Changed paths:
   A /trunk/LibDogTag-3.0/Categories (from /trunk/LibDogTag-3.0/Modules:64684)
   R /trunk/LibDogTag-3.0/Categories/Math.lua (from /trunk/LibDogTag-3.0/Modules/Math.lua:64762
   R /trunk/LibDogTag-3.0/Categories/Misc.lua (from /trunk/LibDogTag-3.0/Modules/Misc.lua:64762
   R /trunk/LibDogTag-3.0/Categories/Operators.lua (from /trunk/LibDogTag-3.0/Modules/Operators.lua:64762
   R /trunk/LibDogTag-3.0/Categories/TextManip.lua (from /trunk/LibDogTag-3.0/Modules/TextManip.lua:64762
   D /trunk/LibDogTag-3.0/Modules
   M /trunk/LibDogTag-3.0/lib.xml
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - rename Modules to Categories
------------------------------------------------------------------------
r64761 | ckknight | 2008-03-16 17:34:54 -0400 (Sun, 16 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua

LibDogTag-3.0 - make setting globals faster
------------------------------------------------------------------------
r64758 | ckknight | 2008-03-16 16:59:46 -0400 (Sun, 16 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Modules/TextManip.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - rename Append to Concatenate, make it take a tuple instead of two strings. it's different than standard concatenation, since if a single argument is nil, it will return nil.
------------------------------------------------------------------------
r64737 | ckknight | 2008-03-16 13:39:12 -0400 (Sun, 16 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua

LibDogTag-3.0 - add unpack to default globals
------------------------------------------------------------------------
r64735 | ckknight | 2008-03-16 13:22:17 -0400 (Sun, 16 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - make sure that literal hex strings don't get converted either.
------------------------------------------------------------------------
r64734 | ckknight | 2008-03-16 13:19:49 -0400 (Sun, 16 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua

LibDogTag-3.0 - no longer try to convert hex numbers like "0x0000000000000000" to numbers, cause the 64-bit GUIDs get a few numbers chopped off.
------------------------------------------------------------------------
r64732 | ckknight | 2008-03-16 12:55:17 -0400 (Sun, 16 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Modules/TextManip.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add tag Substring(value, start [, finish]). UTF-8 aware.
------------------------------------------------------------------------
r64731 | ckknight | 2008-03-16 12:23:15 -0400 (Sun, 16 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/Modules/TextManip.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - tweaks to the Append tag.
- add static color support (for things like minHP and the like). This will likely change.
------------------------------------------------------------------------
r64690 | ckknight | 2008-03-16 04:04:04 -0400 (Sun, 16 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - for tags that take a number as its first argument and are supposed to return a string, check to see if said string can coerce to a number, and if it can, do so.
------------------------------------------------------------------------
r64689 | ckknight | 2008-03-16 03:25:29 -0400 (Sun, 16 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Modules/Misc.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add Boolean tag, which turns a value into true/false.
------------------------------------------------------------------------
r64687 | ckknight | 2008-03-16 03:13:46 -0400 (Sun, 16 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/Modules/Math.lua
   M /trunk/LibDogTag-3.0/Modules/Misc.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - instead of going with list-whatever, go with tuple-whatever, since it makes more sense and fits in better.
------------------------------------------------------------------------
r64686 | ckknight | 2008-03-16 03:10:30 -0400 (Sun, 16 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/Modules/Misc.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - no longer tie tuples to just number or strings, they can take on any type and intermix types without issue.
------------------------------------------------------------------------
r64684 | ckknight | 2008-03-16 02:49:09 -0400 (Sun, 16 Mar 2008) | 5 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Events.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/Modules/Misc.lua
   M /trunk/LibDogTag-3.0/Modules/TextManip.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add "boolean" type to work with, so tags can specify it as a return or an argument. Will work as expected in most cases. If you specify boolean as a return and return something like nil/1, it will automatically convert to false/true. When showing as a string, it will automatically convert to ''/"True".
- add "list-boolean" tuple type.
- make operators "if", "and", "or", and "not" handle booleans cleanly.
- make tags which returned/expected "True"/nil before now use boolean types.
- add priority to :AddTimerHandler, defaults to 5.
------------------------------------------------------------------------
r64665 | ckknight | 2008-03-15 21:54:41 -0400 (Sat, 15 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua

LibDogTag-3.0 - remove another needless check
------------------------------------------------------------------------
r64664 | ckknight | 2008-03-15 21:49:11 -0400 (Sat, 15 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua

LibDogTag-3.0 - remove a lot of unnecessary error checking in the compiler, as that is done primarily before the compilation phase.
------------------------------------------------------------------------
r64662 | ckknight | 2008-03-15 21:37:00 -0400 (Sat, 15 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add a check for syntax errors, so that if you enter an improper tag sequence, it'll tell you "Syntax error", but it doesn't provide any other information.
- update the EBNF so that OUTER_STRING = ( ANY - "[" ), { ANY - "[" }
------------------------------------------------------------------------
r64661 | ckknight | 2008-03-15 21:08:00 -0400 (Sat, 15 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Events.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - change the way Update and SlowUpdate run
------------------------------------------------------------------------
r64658 | ckknight | 2008-03-15 20:43:10 -0400 (Sat, 15 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Events.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - Add :AddTimerHandler(func) and :RemoveTimerHandler(func)
- add fake events FastUpdate (every 0.05 seconds), Update (every 0.15 seconds), and SlowUpdate (every 10 seconds)
------------------------------------------------------------------------
r64652 | ckknight | 2008-03-15 20:07:39 -0400 (Sat, 15 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Events.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add :AddEventHandler(event, func) :RemoveEventHandler(event, func), and :FireEvent(event, ...), for modules to use.
------------------------------------------------------------------------
r64642 | ckknight | 2008-03-15 19:31:39 -0400 (Sat, 15 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - bugfix with compilation messing up events
- add compilation step 'tagevents', that allows the events of a tag to be altered arbitrarily.
------------------------------------------------------------------------
r64635 | ckknight | 2008-03-15 18:48:42 -0400 (Sat, 15 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Modules/Misc.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - change the way the Color tag works
------------------------------------------------------------------------
r64629 | ckknight | 2008-03-15 17:39:58 -0400 (Sat, 15 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - prevent syntax like Tag(alpha=true, 1, 2, 3), as that's a syntax error (and ambiguous to boot), kwargs are only allowed after normal args, so Tag(1, 2, 3, alpha=true) is perfectly appropriate.
- before compilation, turn all normal args into kwargs, to make the overall code simpler and easier for external compilation steps.
------------------------------------------------------------------------
r64626 | ckknight | 2008-03-15 16:08:40 -0400 (Sat, 15 Mar 2008) | 3 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Modules/TextManip.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - fix an issue with forceToTypes in compilation.
- add Append tag to TextManip
- add some more tests
------------------------------------------------------------------------
r64618 | ckknight | 2008-03-15 13:36:49 -0400 (Sat, 15 Mar 2008) | 3 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Events.lua
   M /trunk/LibDogTag-3.0/Modules/Misc.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - support a single event multiple times (with different args) on a single tag. Good for MODIFIER_STATE_CHANGED#LALT;MODIFIER_STATE_CHANGED#RALT, which will only register if either of those are arg1, so it won't react to LSHIFT et al.
- update Alt, Shift, and Ctrl tags.
- add optimization to Compiler, as well as fixing an error message.
------------------------------------------------------------------------
r64609 | ckknight | 2008-03-15 12:28:54 -0400 (Sat, 15 Mar 2008) | 3 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Events.lua
   M /trunk/LibDogTag-3.0/Helpers.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - move the code clearing function from Compiler to Helpers, as it does more than just clear the compiled data, and it is used by more than that file.
- when an event is fired, check to see if the DogTag namespace can react to that event.
- Add :AddAddonFinder("namespace", "kind", "name", func)
------------------------------------------------------------------------
r64556 | ckknight | 2008-03-15 02:08:26 -0400 (Sat, 15 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Parser.lua

LibDogTag-3.0 - saner support for tuples in aliases. Some optimizations in parser.
------------------------------------------------------------------------
r64555 | ckknight | 2008-03-15 01:57:28 -0400 (Sat, 15 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Parser.lua

LibDogTag-3.0 - for parser, move EBNF to the top of the file. Reorganize the position of UNARY_MINUS to not be as hackish.
------------------------------------------------------------------------
r64551 | ckknight | 2008-03-15 01:41:56 -0400 (Sat, 15 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua

LibDogTag-3.0 - optimization with predefined kwargs
------------------------------------------------------------------------
r64520 | ckknight | 2008-03-14 13:43:49 -0400 (Fri, 14 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua

LibDogTag-3.0 - pass along the compiledKwargs for the tag compilation step
------------------------------------------------------------------------
r64510 | ckknight | 2008-03-14 12:32:38 -0400 (Fri, 14 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Helpers.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add compilation step injection on a namespace basis.
------------------------------------------------------------------------
r64481 | ckknight | 2008-03-14 00:44:53 -0400 (Fri, 14 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - for the parser, instead of using chars as strings, treat them as bytes, so that there's just a bunch of passing numbers around.
------------------------------------------------------------------------
r64478 | ckknight | 2008-03-13 23:39:53 -0400 (Thu, 13 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - for the parser, instead of using a complex tokenization system that wasn't all that efficient, treat each character as a token.
------------------------------------------------------------------------
r64475 | ckknight | 2008-03-13 21:02:58 -0400 (Thu, 13 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Cleanup.lua
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Events.lua
   M /trunk/LibDogTag-3.0/Helpers.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/Localization/enUS.lua
   M /trunk/LibDogTag-3.0/Localization/koKR.lua
   M /trunk/LibDogTag-3.0/Localization/zhCN.lua
   M /trunk/LibDogTag-3.0/Modules/Math.lua
   M /trunk/LibDogTag-3.0/Modules/Misc.lua
   M /trunk/LibDogTag-3.0/Modules/Operators.lua
   M /trunk/LibDogTag-3.0/Modules/TextManip.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/lib.xml
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - remove a lot of unneeded localization data.
- make the library creation process a bit simpler
------------------------------------------------------------------------
r64368 | ckknight | 2008-03-12 11:39:45 -0400 (Wed, 12 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add some tests to check concatenation and if statements
------------------------------------------------------------------------
r64365 | ckknight | 2008-03-12 10:49:17 -0400 (Wed, 12 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Modules/Misc.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add Contains tag.
------------------------------------------------------------------------
r64314 | ckknight | 2008-03-11 23:42:55 -0400 (Tue, 11 Mar 2008) | 5 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Modules/Misc.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - optimizations
- when doing [Alpha:~Bravo(...)], if Bravo returns nil, then return Alpha instead of "True", which makes more sense all in all, especially if ~Bravo is an alias for something else
- add tag IsIn, e.g. ['Alpha':IsIn('Bravo', 'Charlie')] => nil, [1:IsIn(1, 2, 3)] => 1
- add tag Hide, alias for ~IsIn, e.g. ['Alpha':Hide('Bravo', 'Charlie')] => "Alpha", [1:Hide(1, 2, 3)] => nil
- fix unaliasing bug
------------------------------------------------------------------------
r64269 | ckknight | 2008-03-11 16:22:39 -0400 (Tue, 11 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Modules/Operators.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - fix = and ~= operators slightly.
- standardization will turn any strings that can act as numbers into numbers properly.
------------------------------------------------------------------------
r64268 | ckknight | 2008-03-11 16:09:26 -0400 (Tue, 11 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add reserved words true and false, which essentially translate into "True" and nil, respectively.
------------------------------------------------------------------------
r64237 | ckknight | 2008-03-11 11:40:45 -0400 (Tue, 11 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add test for tuple aliases on non-tuple tags.
------------------------------------------------------------------------
r64236 | ckknight | 2008-03-11 11:37:45 -0400 (Tue, 11 Mar 2008) | 3 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - allow kwargs to work with aliases
- allow prespecified kwargs to work with aliases
- allow tuples to work with aliases
------------------------------------------------------------------------
r64234 | ckknight | 2008-03-11 10:40:30 -0400 (Tue, 11 Mar 2008) | 4 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/Modules/Math.lua
   M /trunk/LibDogTag-3.0/Modules/Misc.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add support for undef arguments, which are different from nil, only difference being if you specify it, it is nil, if you don't, it's undef. They act the same in most cases
- add support for aliases.
- fix a bug with the standardize function.
- when standardizing { "unm", someNumber }, turn it into -someNumber.
------------------------------------------------------------------------
r64096 | sayclub | 2008-03-09 23:30:37 -0400 (Sun, 09 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Localization/zhCN.lua

LibDogTag-3.0 :
- zhCN typo fix
------------------------------------------------------------------------
r64041 | ckknight | 2008-03-09 12:19:24 -0400 (Sun, 09 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Events.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/Modules/Math.lua
   A /trunk/LibDogTag-3.0/Modules/Misc.lua
   M /trunk/LibDogTag-3.0/Modules/Operators.lua
   M /trunk/LibDogTag-3.0/Modules/TextManip.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - add some more base tags
- some minimal touchups
------------------------------------------------------------------------
r63984 | ckknight | 2008-03-08 23:22:57 -0500 (Sat, 08 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - for tags that have their first argument require a non-nil, do not provide a default, and receive a nil as its first argument, do not evaluate, instead just stay as nil. e.g. [HP:Green] => nil if HP is nil, instead of |cffff0000|r
------------------------------------------------------------------------
r63981 | ckknight | 2008-03-08 22:08:50 -0500 (Sat, 08 Mar 2008) | 6 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Events.lua
   M /trunk/LibDogTag-3.0/Helpers.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/Modules/Math.lua
   A /trunk/LibDogTag-3.0/Modules/TextManip.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/lib.xml
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - assorted refactoring and renaming
- random optimizations
- add tags to Math.lua and add TextManip.lua
- add fake global system
- update lib.xml
- fix negative handling by the parser.
------------------------------------------------------------------------
r63959 | ckknight | 2008-03-08 17:44:46 -0500 (Sat, 08 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/lib.xml

LibDogTag-3.0 - make sure to update lib.xml
------------------------------------------------------------------------
r63958 | ckknight | 2008-03-08 17:40:45 -0500 (Sat, 08 Mar 2008) | 4 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Cleanup.lua
   M /trunk/LibDogTag-3.0/Compiler.lua
   A /trunk/LibDogTag-3.0/Events.lua
   A /trunk/LibDogTag-3.0/Helpers.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - some file cleanup, move general helper functions into Helpers.lua
- add basic event support, currently only callbacks work, no FontStrings yet.
- allow tag.events to be a function
- allow events to specify the argument to look at, and that argument can even be dynamic instead of a literal.
------------------------------------------------------------------------
r63915 | ckknight | 2008-03-08 10:56:36 -0500 (Sat, 08 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - allow globals to be a function, pass in relevant data
------------------------------------------------------------------------
r63913 | ckknight | 2008-03-08 10:34:27 -0500 (Sat, 08 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - allow code to be a function, pass in relevant data
------------------------------------------------------------------------
r63912 | ckknight | 2008-03-08 10:27:04 -0500 (Sat, 08 Mar 2008) | 2 lines
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - allow ret to be a function, pass in relevant data to said function
- simplify the tag compilation process.
------------------------------------------------------------------------
r63787 | cwdg | 2008-03-07 02:52:58 -0500 (Fri, 07 Mar 2008) | 2 lines
Changed paths:
   A /trunk/LibDogTag-3.0/Localization/zhCN.lua

LibDogTag-3.0:
Add zhCN local file
------------------------------------------------------------------------
r63685 | 7destiny | 2008-03-05 11:38:40 -0500 (Wed, 05 Mar 2008) | 1 line
Changed paths:
   A /trunk/LibDogTag-3.0/Localization/koKR.lua
   M /trunk/LibDogTag-3.0/lib.xml

LibDogTag-3.0: - Add koKR localization
------------------------------------------------------------------------
r63650 | ckknight | 2008-03-05 01:34:41 -0500 (Wed, 05 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Compiler.lua
   M /trunk/LibDogTag-3.0/Modules/Operators.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - in tags, allow ${arg:string} and ${arg:type} to reference arg's string representation or type, respectively.
------------------------------------------------------------------------
r63643 | ckknight | 2008-03-04 23:39:54 -0500 (Tue, 04 Mar 2008) | 1 line
Changed paths:
   M /trunk/LibDogTag-3.0/Parser.lua
   M /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - Support in strings, e.g. [Func("Alpha\"Bravo")] works the same as [Func('Alpha"Bravo')]
------------------------------------------------------------------------
r63630 | ckknight | 2008-03-04 21:27:40 -0500 (Tue, 04 Mar 2008) | 4 lines
Changed paths:
   A /trunk/LibDogTag-3.0
   A /trunk/LibDogTag-3.0/Cleanup.lua
   A /trunk/LibDogTag-3.0/Compiler.lua
   A /trunk/LibDogTag-3.0/LibDogTag-3.0.lua
   A /trunk/LibDogTag-3.0/LibDogTag-3.0.toc
   A /trunk/LibDogTag-3.0/LibStub
   A /trunk/LibDogTag-3.0/LibStub/LibStub.lua
   A /trunk/LibDogTag-3.0/Localization
   A /trunk/LibDogTag-3.0/Localization/enUS.lua
   A /trunk/LibDogTag-3.0/Modules
   A /trunk/LibDogTag-3.0/Modules/Math.lua
   A /trunk/LibDogTag-3.0/Modules/Operators.lua
   A /trunk/LibDogTag-3.0/Parser.lua
   A /trunk/LibDogTag-3.0/lib.xml
   A /trunk/LibDogTag-3.0/test.lua

LibDogTag-3.0 - initial commit
- note: this is not to be used yet, it is not finished, it is mostly so I can have a proper code history as well as allowing others to view what I have thus far.
- Differences from 2.0: Different syntax, uses a proper LALR parser instead of regexes. Vigorous testing, no longer unit-specific, that will be part of its own namespace.
Feel free to check out test.lua it's pretty much a full testsuite for LibDogTag-3.0 thus far, and it will stay that way.
------------------------------------------------------------------------