[Mathlib-commitlog] SF.net SVN: mathlib:[625] JMathLib/trunk/src/jmathlib/toolbox/general
Status: Beta
Brought to you by:
st_mueller
|
From: <st_...@us...> - 2009-01-05 15:13:44
|
Revision: 625
http://mathlib.svn.sourceforge.net/mathlib/?rev=625&view=rev
Author: st_mueller
Date: 2009-01-05 15:13:40 +0000 (Mon, 05 Jan 2009)
Log Message:
-----------
changed handling of global variables
Modified Paths:
--------------
JMathLib/trunk/src/jmathlib/toolbox/general/who.java
JMathLib/trunk/src/jmathlib/toolbox/general/whos.java
Modified: JMathLib/trunk/src/jmathlib/toolbox/general/who.java
===================================================================
--- JMathLib/trunk/src/jmathlib/toolbox/general/who.java 2009-01-05 15:11:55 UTC (rev 624)
+++ JMathLib/trunk/src/jmathlib/toolbox/general/who.java 2009-01-05 15:13:40 UTC (rev 625)
@@ -4,8 +4,8 @@
import jmathlib.core.tokens.OperandToken;
import jmathlib.core.interpreter.*;
import jmathlib.core.functions.ExternalFunction;
+import java.util.*;
-import java.util.*;
/**An external function for getting the stored variables*/
public class who extends ExternalFunction
{
@@ -19,7 +19,7 @@
getInterpreter().displayText("\nYour variables are:\n");
- Iterator iter = getVariables().getIterator();
+ Iterator iter = getLocalVariables().getIterator();
while(iter.hasNext())
{
Map.Entry next = ((Map.Entry)iter.next());
Modified: JMathLib/trunk/src/jmathlib/toolbox/general/whos.java
===================================================================
--- JMathLib/trunk/src/jmathlib/toolbox/general/whos.java 2009-01-05 15:11:55 UTC (rev 624)
+++ JMathLib/trunk/src/jmathlib/toolbox/general/whos.java 2009-01-05 15:13:40 UTC (rev 625)
@@ -11,7 +11,7 @@
public OperandToken evaluate(Token[] operands)
{
- Iterator iter = getVariables().getIterator();
+ Iterator iter = getLocalVariables().getIterator();
// display header information
getInterpreter().displayText("\nYour variables are:\n");
@@ -22,21 +22,28 @@
{
if ((operands[0] instanceof CharToken))
{
- String data = ((CharToken)operands[0]).getValue().toLowerCase();
+ String data = ((CharToken)operands[0]).getValue();
if (data.equals("global"))
iter = getGlobalVariables().getIterator();
}
}
+ // iterate through the complete local variable list
while(iter.hasNext())
{
- Map.Entry next = ((Map.Entry)iter.next());
- Variable var = (Variable)next.getValue();
- OperandToken op = (OperandToken)var.getData();
- String line = "";
+ Map.Entry next = ((Map.Entry)iter.next());
+ Variable var = (Variable)next.getValue();
+ OperandToken op = (OperandToken)var.getData();
+ Boolean global = var.isGlobal();
+ String name = var.getName();
+ String line = "";
- line = var.getName()+" \t";
+ line = name + " \t";
+ // if variable is global get data from global context
+ if (global)
+ op = (OperandToken)getGlobalVariables().getVariable(name).getData();
+
// check which type of variable
if (op instanceof DataToken)
{
@@ -48,8 +55,9 @@
line += " \t unknown";
}
- if (getGlobalVariables().isVariable(var.getName()))
- line += "(global)";
+ //if (getLocalVariables().isVariable(var.getName()))
+ if (global)
+ line += "(global)";
getInterpreter().displayText(line);
}
@@ -85,11 +93,12 @@
general
@SYNTAX
whos
+whos("global")
@DOC
Returns a list of all the variables in the system.
@EXAMPLES
@NOTES
@SEE
-who
+who, clear, global
*/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|