[Protra-commit] [299] [FRE #12211]

Zurück zum Archiv-Index

svnno****@sourc***** svnno****@sourc*****
2010年 3月 18日 (木) 15:26:36 JST


Revision: 299
          http://sourceforge.jp/projects/protra/svn/view?view=rev&revision=299
Author:   panacoran
Date:     2010-03-18 15:26:35 +0900 (Thu, 18 Mar 2010)

Log Message:
-----------
	[FRE #12211]
	* Protra.Lib/Controls/SimulateTextBox.cs (SimulateTextBox.Simulate): 組み込み関数の実行環境にRightIndexの値を設定する。
	* Protra.Lib/Lang/Builtins/BasicBuiltins.cs (BasicBuiltins.RightIndex): 新規。右端のインデックスを設定する。
	(BasicBuiltins.Invoke): 組み込み関数RightIndexを実装する。
	* Protra.Lib/Lang/Builtins/DrawBuiltins.cs (DrawBuiltins.RightIndex): 削除。
	(DrawBuiltins.Invoke): 組み込み関数RightIndexを削除。

2008-03-27  panacoran <panac****@users*****>

	* bin/Release/NEWS.txt: 処理系の高速化に言及。
	* Protra.Lib/Protra.Lib.csproj: 後述するファイルの追加と削除。
	
	* Protra.Lib/Controls/ChartBox.cs (ChartBox): 組み込み関数の実装をChartBuiltinsクラスに移動。
	* Protra.Lib/Controls/SimulateTextBox.cs (SimulateTextBox): UseLogを削除して必ずログを使用する。組み込み関数の実装をSimulateBuiltinsクラスに移動。
	(SimulateTextBox.LoadGlobalCache): ログに互換性がなくなるのですべて削除する。
	
	* Protra.Lib/Lang/Node.cs (Node): 字句解析器をクラスで共有。字句をContextTokenからTokenに。
	(Node.Parse): 返値を単純化した構文木に。
	(Node.Simplify): 削除。
	* Protra.Lib/Lang/ArithmeticExpressionNode.cs: Nodeクラスの変更を反映。ArrayListをListに変更。以下同様の変更。
	* Protra.Lib/Lang/ArithmeticTermNode.cs: 同上。
	* Protra.Lib/Lang/ArrayNode.cs: 同上。
	* Protra.Lib/Lang/BreakStatementNode.cs: 同上。
	* Protra.Lib/Lang/ComparisonNode.cs: 同上。
	* Protra.Lib/Lang/ContinueStatementNode.cs: 同上。
	* Protra.Lib/Lang/EmptyStatementNode.cs: 同上。
	* Protra.Lib/Lang/EquivalenceComparisonNode.cs: 同上。
	* Protra.Lib/Lang/ExpressionNode.cs: 同上。
	(ExpressionNode.Parse): 左辺値の処理をExecuteに移す。
	(ExpressionNode.Execute): 代入の処理をVariableクラスとSuffixedExpressionNodeクラスに移動。
	* Protra.Lib/Lang/ExpressionStatementNode.cs: 同上。
	* Protra.Lib/Lang/FunctionDefinitionNode.cs: 同上。
	* Protra.Lib/Lang/FunctionNode.cs: 同上。
	(FunctionNode.Execute): 組み込み関数の実行をBuiltinクラスのサブクラスに。
	* Protra.Lib/Lang/IfStatementNode.cs: 同上。
	* Protra.Lib/Lang/LiteralNode.cs: 同上。
	(LiteralNode.Parse): 数値への変換は字句解析器で行う。
	* Protra.Lib/Lang/LogicalExpressionNode.cs: 同上。
	(LogicalExpressionNode.Execute): Value.operator|を使わずに評価する。
	* Protra.Lib/Lang/LogicalTermNode.cs: 同上。
	(LogicalTermNode.Execute): Value.operator&を使わずに評価する。
	* Protra.Lib/Lang/PrefixedExpressionNode.cs: 同上。
	(PrefixedExpressionNode.Parse): 型キャストの判別にScan.Peekによる先読みを使う。
	* Protra.Lib/Lang/PrimaryNode.cs: 同上。
	(PrimaryNode.Parse): 字句の判別は字句解析器で行う。
	* Protra.Lib/Lang/ProgramNode.cs: 同上。
	* Protra.Lib/Lang/ReturnStatementNode.cs: 同上。
	* Protra.Lib/Lang/StatementNode.cs: 同上。
	* Protra.Lib/Lang/SuffixedExpressionNode.cs: 同上。
	(SuffixedExpressionNode.Assign): 新規。代入を処理する。
	* Protra.Lib/Lang/VariableNode.cs: 同上。
	(VariableNode.Assign): 新規。代入を処理する。
	* Protra.Lib/Lang/WhileStatementNode.cs: 同上。
	
	* Protra.Lib/Lang/Buffer.cs: 新規。
	(Position): ファイルの読み込み位置を記録する構造体。
	(Buffer): 空白のスキップと#include/require文の処理を行う行バッファ
	* Protra.Lib/Lang/Scanner.cs: 新規。
	(Scanner): 字句解析を行うクラス。
	* Protra.Lib/Lang/Token.cs: 新規。
	(TokenType): 字句の種類を表す列挙型。
	(Token): 字句を表すクラス。
	* Protra.Lib/Lang/Builtins/Builtins.cs: 新規。
	(Builtins): 組み込み関数を処理するクラスの親クラス。
	* Protra.Lib/Lang/Builtins/BasicBuiltins.cs: 新規。
	(BasicBuiltins): 基本的な組み込み関数を実行するクラス。
	* Protra.Lib/Lang/Builtins/DrawBuiltins.cs: 新規。
	(DrawFunctionRecord): 描画系の組み込み関数の実行を記録する構造体。
	(DrawBuiltins): 描画を行う組み込み関数を実行するクラス。
	* Protra.Lib/Lang/Builtins/MathBuiltins.cs: 新規。
	(MathBuiltins): 数学関係の組み込み関数を実行するクラス。
	* Protra.Lib/Lang/Builtins/SimulateBuiltins.cs: 新規。
	(SimulateBuiltins): シミュレーション関連の組み込み関数を処理するクラス。
	
	* Protra.Lib/Lang/Interpreter.cs: InterpreterFacadeから改名。
	(Interpreter): Stack, FunctionTable, GlobalVariableTableのクラスをGenericsに。
	* Protra.Lib/Lang/ParseException.cs (ParseException): 字句をContextTokenからTokenに。
	* Protra.Lib/Lang/RuntimeException.cs (RuntimeException): 同上。
	* Protra.Lib/Lang/Resource.cs (Resource): StackArea, VariableTable, FunctionTableをGenericsに。ExecuterFactoryを削除。コンストラクタを削除。BasicBuiltinsのインスタンスを保持するフィールドBuiltinsを追加。
	* Protra.Lib/Lang/Value.cs (Value.Equals): 文字列の比較を正しく行う。数値の比較を直接行う。
	(Value.operator|): 削除。
	(Value.operator&): 削除。
	* PtSim/MainForm.cs (MainForm.InitializeComponent): SimulateTextBoxへのUseLogの設定を削除。
	
	* Protra.Lib/Lang/Context.cs: 削除。
	* Protra.Lib/Lang/ContextToken.cs: 削除。
	* Protra.Lib/Lang/FunctionTable.cs: 削除。
	* Protra.Lib/Lang/IExecuter.cs: 削除。
	* Protra.Lib/Lang/IExecuterFactory.cs: 削除。
	* Protra.Lib/Lang/InterpreterFacade.cs: 削除。
	* Protra.Lib/Lang/StackArea.cs: 削除。
	* Protra.Lib/Lang/VariableTable.cs: 削除。
	* Protra.Lib/Lang/Executer/DelegateExecuter.cs: 削除。
	* Protra.Lib/Lang/Executer/ExecuterFactoryUnion.cs: 削除。
	* Protra.Lib/Lang/Executer/MathExecuterFactory.cs: 削除。

Ticket Links:
:-----------
    http://sourceforge.jp/projects/protra/tracker/detail/12211

Modified Paths:
--------------
    protra/trunk/ChangeLog.txt
    protra/trunk/Protra/Controls/ChartPanel.cs
    protra/trunk/Protra/Dialogs/OptionDialog.cs
    protra/trunk/Protra/Dialogs/PriceUpdateDialog.cs
    protra/trunk/Protra/MainForm.cs
    protra/trunk/Protra/Protra.csproj
    protra/trunk/Protra.Lib/Db/Brand.cs
    protra/trunk/Protra.Lib/Protra.Lib.csproj
    protra/trunk/Protra.Lib/Update/PriceDataUpdator.cs
    protra/trunk/PtSim/Dialogs/EditBrandListContentDialog.cs
    protra/trunk/PtSim/Dialogs/EditBrandListDialog.cs
    protra/trunk/PtSim/MainForm.cs

Added Paths:
-----------
    protra/trunk/Protra.Lib/Config/
    protra/trunk/Protra.Lib/Config/BrandListConfig.cs
    protra/trunk/Protra.Lib/Config/ConfigBase.cs
    protra/trunk/Protra.Lib/Config/ProtraConfig.cs
    protra/trunk/Protra.Lib/Config/PtSimConfig.cs
    protra/trunk/Protra.Lib/Config/UpdateConfig.cs

Removed Paths:
-------------
    protra/trunk/Protra/FavoriteBrandItem.cs




Protra-commit メーリングリストの案内
Zurück zum Archiv-Index