|
From: <fra...@us...> - 2009-08-11 08:30:29
|
Revision: 1820
http://javapathfinder.svn.sourceforge.net/javapathfinder/?rev=1820&view=rev
Author: frankrimlinger
Date: 2009-08-11 08:30:19 +0000 (Tue, 11 Aug 2009)
Log Message:
-----------
There are some order dependencies in the rulebase that are critical. In particular, there are some "clean up" rules which must occur last. To accommodate, when the rulebase is read in, each rule is assigned a sequence number. All rules generated subsequently get zero rank. The matching algorithm in the RuleFilterManager then sorts the produced vector of rules according to this ranking just prior to handing off the list to the rewriter.
New and modified rules are placed at the beginning, as far as the rewriter is concerned. If you really NEED a rule at a particular spot, then just save the rulebase and reload it.
Cleaned up persistence delegation, eliminating the horrible "coreSerialID" than was used for java/c++ communication long long ago.
Rewriter is kicking over but evidently some rules are not getting into the pipeline.
Modified Paths:
--------------
branches/mango/Mango/Mango/src/mango/control/action/input/RuleBaseAction.java
branches/mango/Mango/Mango/src/mango/core/CoreHitem.java
branches/mango/Mango/Mango/src/mango/core/CoreKons.java
branches/mango/Mango/Mango/src/mango/core/CoreKonsFactory.java
branches/mango/Mango/Mango/src/mango/core/CoreMFLexportProxySym.java
branches/mango/Mango/Mango/src/mango/core/CoreMFLexportProxySymFactory.java
branches/mango/Mango/Mango/src/mango/core/CoreMangoActiveObject.java
branches/mango/Mango/Mango/src/mango/core/CoreMangoObject.java
branches/mango/Mango/Mango/src/mango/core/CoreRule.java
branches/mango/Mango/Mango/src/mango/core/CoreRuleBase.java
branches/mango/Mango/Mango/src/mango/core/CoreSym.java
branches/mango/Mango/Mango/src/mango/core/CoreSymFactory.java
branches/mango/Mango/Mango/src/mango/core/CoreTier.java
branches/mango/Mango/Mango/src/mango/core/CoreVariable.java
branches/mango/Mango/Mango/src/mango/core/CoreVariableFactory.java
branches/mango/Mango/Mango/src/mango/core/gui/action/CloneCoreRuleAction.java
branches/mango/Mango/Mango/src/mango/core/gui/action/NewCoreRuleAction.java
branches/mango/Mango/Mango/src/mango/core/gui/action/NewCoreTierAction.java
branches/mango/Mango/Mango/src/mango/core/io/CoreDoublePersistenceDelegate.java
branches/mango/Mango/Mango/src/mango/core/io/CoreFloatPersistenceDelegate.java
branches/mango/Mango/Mango/src/mango/core/io/CoreIntegerPersistenceDelegate.java
branches/mango/Mango/Mango/src/mango/core/io/CoreKonsPersistenceDelegate.java
branches/mango/Mango/Mango/src/mango/core/io/CoreLongPersistenceDelegate.java
branches/mango/Mango/Mango/src/mango/core/io/CoreMFLexportProxySymPersistenceDelegate.java
branches/mango/Mango/Mango/src/mango/core/io/CorePersistenceDelegate.java
branches/mango/Mango/Mango/src/mango/core/io/CoreRuleBasePersistenceDelegate.java
branches/mango/Mango/Mango/src/mango/core/io/CoreRulePersistenceDelegate.java
branches/mango/Mango/Mango/src/mango/core/io/CoreSymPersistenceDelegate.java
branches/mango/Mango/Mango/src/mango/core/io/CoreTierPersistenceDelegate.java
branches/mango/Mango/Mango/src/mango/core/io/CoreVariablePersistenceDelegate.java
branches/mango/Mango/Mango/src/mango/core/io/MangoEncoder.java
branches/mango/Mango/Mango/src/mango/core/numbers/CoreDouble.java
branches/mango/Mango/Mango/src/mango/core/numbers/CoreFloat.java
branches/mango/Mango/Mango/src/mango/core/numbers/CoreInteger.java
branches/mango/Mango/Mango/src/mango/core/numbers/CoreLong.java
branches/mango/Mango/Mango/src/mango/core/numbers/CoreNumber.java
branches/mango/Mango/Mango/src/mango/core/numbers/CoreNumberFactory.java
branches/mango/Mango/Mango/src/mango/core/util/CoreUtilities.java
branches/mango/Mango/Mango/src/mango/module/instance/sym/InstanceManagerProxySym.java
branches/mango/Mango/Mango/src/mango/module/model/ModuleManager.java
branches/mango/Mango/Mango/src/mango/ruleRequirement/function/BaseInvariantAgentProxySym.java
branches/mango/Mango/Mango/src/mango/script/gui/action/ScriptSaveAction.java
branches/mango/Mango/Mango/src/mango/worker/engine/hash/symbolHash/SymbolHashTyping.java
branches/mango/Mango/Mango/src/mango/worker/engine/rule/Rule.java
branches/mango/Mango/Mango/src/mango/worker/engine/rule/RuleFilter.java
branches/mango/Mango/Mango/src/mango/worker/engine/rule/RuleFilterManager.java
branches/mango/Mango/Mango/src/mango/worker/engine/rule/RuleFilterStat.java
branches/mango/Mango/Mango/src/mango/worker/engine/sym/ClassNameSym.java
branches/mango/Mango/Mango/src/mango/worker/engine/sym/ClinitWasCalledSym.java
branches/mango/Mango/Mango/src/mango/worker/engine/sym/GenericMethodNameSym.java
branches/mango/Mango/Mango/src/mango/worker/engine/sym/ImmutableSym.java
branches/mango/Mango/Mango/src/mango/worker/engine/sym/InstructionNameSym.java
branches/mango/Mango/Mango/src/mango/worker/engine/sym/InvocationNameSym.java
branches/mango/Mango/Mango/src/mango/worker/engine/sym/Marker.java
branches/mango/Mango/Mango/src/mango/worker/engine/sym/NullObject.java
branches/mango/Mango/Mango/src/mango/worker/engine/sym/StringSym.java
branches/mango/Mango/Mango/src/mango/worker/engine/sym/Sym.java
branches/mango/Mango/Mango/src/mango/worker/mangoModel/sym/graphic/MethodSym.java
branches/mango/Mango/Mango/src/mango/worker/msg/NewWorkerMsg.java
branches/mango/Mango/Mango/src/mango/worker/msg/RulebaseMsg.java
branches/mango/Mango/Mango/src/mango/worker/workFlow/translate/sym/TranslationSym.java
branches/mango/Mango/javapathfinder-mango-bridge/mango/FormalTypes.java
branches/mango/Mango/javapathfinder-mango-bridge/mango/scanner/sym/InstructionSym.java
branches/mango/Mango/javapathfinder-mango-bridge/mango/scanner/sym/InvocationSym.java
branches/mango/Mango/mangoUserHome/frank/rules/rulebase.zip
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|