[mkgmap-dev] [mkgmap-svn] Commit: r1488: RuleFileReader.optimiseAndSaveBinaryOp(): Try to be symmetric.
From Steve Ratcliffe steve at parabola.me.uk on Mon Jan 18 11:57:36 GMT 2010
Hi Marko > a~b& (c=d|e=f) OK cool, that is an example where it would be useful. > I see, there can be at most one search key per rule? So, it would seem to > make sense to put the most selective condition first. And I guess then > it would not make sense to move the isType(OR) checks before > EQUALS or EXISTS. Yes currently each rule is indexed by one search key. Indexing on further terms might help in the case where the key tag is changed by a 'set', so it is something I've thought about. > Does my above example convince you that the symmetry might be useful? > Or do you think that we should throw syntax error for "stupid" style > definitions? Your example is good. I would not call it symmetrical though :) There are lots more things that do not work, here are a few that I've just tried out: 1. a~b # doesn't work 2. a~b & c=d # works 3. a~b & c~d & e=f # doesn't work. 4. (a~b | c~d) & e=f # works 5a (a~b | c~d) & e=f & g=h # doesn't work 5b ((a~b | c~d) & e=f) & g=h # works! 6a e=f & g=h & (a~b | c~'d.*') # works 6b (e=f & g=h) & (a~b | c~'d.*') # doesn't work Just looking at first and second doesn't work at all in general. Of course no-one uses anything that complex in their styles. ..Steve
- Previous message: [mkgmap-dev] [mkgmap-svn] Commit: r1488: RuleFileReader.optimiseAndSaveBinaryOp(): Try to be symmetric.
- Next message: [mkgmap-dev] [mkgmap-svn] Commit: r1488: RuleFileReader.optimiseAndSaveBinaryOp(): Try to be symmetric.
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the mkgmap-dev mailing list