File: CodeMap.html

package info (click to toggle)
bsh 1.0-beta-2
  • links: PTS
  • area: contrib
  • in suites: potato
  • size: 1,804 kB
  • ctags: 1,857
  • sloc: java: 14,653; makefile: 53; sh: 14
file content (127 lines) | stat: -rw-r--r-- 3,276 bytes parent folder | download | duplicates (13)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<html>
<body bgcolog=#ffffff>

<h1>Map to the BeanShell Source</h1>

This is a rough guide to the BeanShell source code.  See comments in the
individual files for more information.
<p>

<h2>Package Areas</h2>
<ul>
<li><b>bsh</b>
	Primary bsh source package
<li><b>bsh/util</b>
	Optional bsh utilities
<li><b>bsh/commands</b>
	Bsh scripts and Java code which implement Bsh commands
<li><b>bsh/lib</b>
	Bsh support files
</ul>

<h3>The bsh package</h3>

<b>Parse Tree Classes</b>
<ul>
<li><b>BSH*.java</b>
<br>
<em>e.g. BSHAllocationExpression.java, 
	BSHAmbiguousName.java, BSHArguments.java</em>
<p>

These are the abstract syntax tree nodes (subclasses of SimpleNode) -
the internally compiled form of a bsh script.  Instances of these nodes 
are created by the parser to represent the bsh syntax read from a script. 
<p>
The original class structure was created by JJTree but these files 	
are *not* automatically generated any longer.  They have been implemented 
with the real code that executes their syntax.
<p>

Most BSH nodes are referenced only through their eval() method which
causes them to evaluate any child nodes and execute their behavior,
returning an object to the caller.
<p>

<li><b>SimpleNode.java</b>
	Base class for BSH nodes.

<li><b>ReturnControl.java</b>
	Support for control flow of a return statement.
</ul>

<b>I/O support</b>
<ul>
<li><b>CommandLineInputStream.java</b>
	Basic support for command line input.
<li><b>Console.java</b>
	Support for starting a GUI console.
<li><b>ConsoleInterface.java</b>
<li><b>File.java</b>
	File I/O that works relative to the bsh notion of the working directory.
<li><b>ExternalVars.java</b>
	Interface for setting/getting variables on a bsh interpreter.
</ul>

<b>Exceptions</b>
<ul>
<li><b>EvalError.java</b>
	A problem occurred while parsing or running a bsh script.
<li><b>InterpreterError.java</b>
	A fatal internal error occurred.
<li><b>TargetError.java</b>
	The target of a bsh operation threw an exception which the script is
	allowed to handle.
</ul>

<b>Name Resolution Support</b>
<ul>
<li><b>Name.java</b>
<li><b>NameSpace.java</b>
<li><b>ForBodyNameSpace.java</b>
</ul>

<b>Object / Primitive Wrappers</b>
<ul>
<li><b>Primitive.java</b>
	Wraps a primitive numeric value, char, boolean, void, or null.
<li><b>LHS.java</b>
	Wraps the left hand side of an assignment
</ul>

<b>Reflection Support</b>
<ul>
<li><b>Reflect.java</b>
<li><b>ReflectError.java</b>
</ul>


<b>Bsh Scripted Object Support</b>
<ul>
<li><b>This.java</b> 
	The type of a bsh scripted object (a 'this' reference).
<li><b>JThis.java</b>
	For backwards compatability with jdk1.2. Adds explicit Swing support.
<li><b>XThis.java</b>
	Extended 'this' with support for the new jdk1.3 proxy mechanism.
</ul>

<b>Automatically Generated Files</b>
<br>
The following files are automatically generated by JTree or JavaCC and should 
*not* be modified directly.
<ul>
<li><b>Interpreter.java</b>
	This is the actual parser class.
<li><b>ASCII_UCodeESC_CharStream.java</b>
<li><b>TokenMgrError.java</b>
<li><b>Token.java</b>
<li><b>ParseException.java</b>
<li><b>InterpreterConstants.java</b>
<li><b>InterpreterTokenManager.java</b>
<li><b>InterpreterTreeConstants.java</b>
<li><b>JJTInterpreterState.java</b>
<li><b>Node.java</b>
</ul>
<p>