added: Pattern::CacheFunctions(Functions<StreamType> & fun)

you can cache all functions (their addresses) in the pattern

changed: now we have two methods for generating content:
       Generator<>::Generate(StreamType & o, Pattern & p, Functions<StreamType> & f);
       similar like previous -- Set(...) methods were removed as well as the second ctor 

       and a second one:
       Generate(StreamType & o, Pattern & p);
       without functions, the functions should be cached beforehand in the pattern
       by calling CacheFunctions() method on the pattern
       this gives O(1) complexity when looking for a specific function
       previously was O(log n) 
       


git-svn-id: svn://ttmath.org/publicrep/ezc/trunk@329 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
2010-11-25 22:39:58 +00:00
parent 5108495540
commit 0b09b5454f
6 changed files with 195 additions and 152 deletions

View File

@@ -1,7 +1,7 @@
# DO NOT DELETE
edanticitem.o: item.h
edanticpattern.o: pattern.h item.h stringconv.h utf8.h
edanticitem.o: item.h funinfo.h
edanticpattern.o: pattern.h item.h funinfo.h functions.h stringconv.h utf8.h
edanticpattern.o: /home/tomek/roboczy/winix/core/log.h
edanticpattern.o: /home/tomek/roboczy/winix/core/textstream.h
edanticpattern.o: /home/tomek/roboczy/winix/core/misc.h