source: trunk/abcl/doc/manual/jss.tex @ 15150

Last change on this file since 15150 was 15150, checked in by Mark Evenson, 4 years ago

Outstanding changes from github to svn changes

As of
<https://github.com/armedbear/abcl/commit/441df13fa92d1fc3dac5858fdb50d13aeaaa88cd> these are the meaningful changes we wish to retain from Github in preparation for reversing the direction of the github bridge.

File size: 7.7 KB
Line 
1\paragraph{}
2\label{JSS:*CL-USER-COMPATIBILITY*}
3\index{*CL-USER-COMPATIBILITY*}
4--- Variable: \textbf{*cl-user-compatibility*} [\textbf{jss}] \textit{}
5
6\begin{adjustwidth}{5em}{5em}
7Whether backwards compatibility with JSS's use of CL-USER has been enabled.
8\end{adjustwidth}
9
10\paragraph{}
11\label{JSS:*DO-AUTO-IMPORTS*}
12\index{*DO-AUTO-IMPORTS*}
13--- Variable: \textbf{*do-auto-imports*} [\textbf{jss}] \textit{}
14
15\begin{adjustwidth}{5em}{5em}
16Whether to automatically introspect all Java classes on the classpath when JSS is loaded.
17\end{adjustwidth}
18
19\paragraph{}
20\label{JSS:*MUFFLE-WARNINGS*}
21\index{*MUFFLE-WARNINGS*}
22--- Variable: \textbf{*muffle-warnings*} [\textbf{jss}] \textit{}
23
24\begin{adjustwidth}{5em}{5em}
25not-documented
26\end{adjustwidth}
27
28\paragraph{}
29\label{JSS:CLASSFILES-IMPORT}
30\index{CLASSFILES-IMPORT}
31--- Function: \textbf{classfiles-import} [\textbf{jss}] \textit{directory}
32
33\begin{adjustwidth}{5em}{5em}
34Load all Java classes recursively contained under DIRECTORY in the current process.
35\end{adjustwidth}
36
37\paragraph{}
38\label{JSS:ENSURE-COMPATIBILITY}
39\index{ENSURE-COMPATIBILITY}
40--- Function: \textbf{ensure-compatibility} [\textbf{jss}] \textit{}
41
42\begin{adjustwidth}{5em}{5em}
43Ensure backwards compatibility with JSS's use of CL-USER.
44\end{adjustwidth}
45
46\paragraph{}
47\label{JSS:FIND-JAVA-CLASS}
48\index{FIND-JAVA-CLASS}
49--- Function: \textbf{find-java-class} [\textbf{jss}] \textit{name}
50
51\begin{adjustwidth}{5em}{5em}
52not-documented
53\end{adjustwidth}
54
55\paragraph{}
56\label{JSS:GET-JAVA-FIELD}
57\index{GET-JAVA-FIELD}
58--- Function: \textbf{get-java-field} [\textbf{jss}] \textit{object field \&optional (try-harder *running-in-osgi*)}
59
60\begin{adjustwidth}{5em}{5em}
61Get the value of the FIELD contained in OBJECT.
62If OBJECT is a symbol it names a dot qualified static FIELD.
63\end{adjustwidth}
64
65\paragraph{}
66\label{JSS:HASHMAP-TO-HASHTABLE}
67\index{HASHMAP-TO-HASHTABLE}
68--- Function: \textbf{hashmap-to-hashtable} [\textbf{jss}] \textit{hashmap \&rest rest \&key (keyfun (function identity)) (valfun (function identity)) (invert? NIL) table \&allow-other-keys}
69
70\begin{adjustwidth}{5em}{5em}
71Converts the a HASHMAP reference to a java.util.HashMap object to a Lisp hashtable.
72
73The REST paramter specifies arguments to the underlying MAKE-HASH-TABLE call.
74
75KEYFUN and VALFUN specifies functions to be run on the keys and values
76of the HASHMAP right before they are placed in the hashtable.
77
78If INVERT? is non-nil than reverse the keys and values in the resulting hashtable.
79\end{adjustwidth}
80
81\paragraph{}
82\label{JSS:INVOKE-ADD-IMPORTS}
83\index{INVOKE-ADD-IMPORTS}
84--- Macro: \textbf{invoke-add-imports} [\textbf{jss}] \textit{}
85
86\begin{adjustwidth}{5em}{5em}
87Push these imports onto the search path. If multiple, earlier in list take precedence
88\end{adjustwidth}
89
90\paragraph{}
91\label{JSS:INVOKE-RESTARGS}
92\index{INVOKE-RESTARGS}
93--- Function: \textbf{invoke-restargs} [\textbf{jss}] \textit{method object args \&optional (raw? NIL)}
94
95\begin{adjustwidth}{5em}{5em}
96not-documented
97\end{adjustwidth}
98
99\paragraph{}
100\label{JSS:ITERABLE-TO-LIST}
101\index{ITERABLE-TO-LIST}
102--- Function: \textbf{iterable-to-list} [\textbf{jss}] \textit{iterable}
103
104\begin{adjustwidth}{5em}{5em}
105Return the items contained the java.lang.Iterable ITERABLE as a list.
106\end{adjustwidth}
107
108\paragraph{}
109\label{JSS:J2LIST}
110\index{J2LIST}
111--- Function: \textbf{j2list} [\textbf{jss}] \textit{thing}
112
113\begin{adjustwidth}{5em}{5em}
114Attempt to construct a Lisp list out of a Java THING
115\end{adjustwidth}
116
117\paragraph{}
118\label{JSS:JAPROPOS}
119\index{JAPROPOS}
120--- Function: \textbf{japropos} [\textbf{jss}] \textit{string}
121
122\begin{adjustwidth}{5em}{5em}
123Output the names of all Java class names loaded in the current process which match STRING..
124\end{adjustwidth}
125
126\paragraph{}
127\label{JSS:JAR-IMPORT}
128\index{JAR-IMPORT}
129--- Function: \textbf{jar-import} [\textbf{jss}] \textit{file}
130
131\begin{adjustwidth}{5em}{5em}
132Import all the Java classes contained in the pathname FILE into the JSS dynamic lookup cache.
133\end{adjustwidth}
134
135\paragraph{}
136\label{JSS:JARRAY-TO-LIST}
137\index{JARRAY-TO-LIST}
138--- Function: \textbf{jarray-to-list} [\textbf{jss}] \textit{jarray}
139
140\begin{adjustwidth}{5em}{5em}
141Convert the Java array named by JARRARY into a Lisp list.
142\end{adjustwidth}
143
144\paragraph{}
145\label{JSS:JAVA-CLASS-METHOD-NAMES}
146\index{JAVA-CLASS-METHOD-NAMES}
147--- Function: \textbf{java-class-method-names} [\textbf{jss}] \textit{class \&optional stream}
148
149\begin{adjustwidth}{5em}{5em}
150Return a list of the public methods encapsulated by the JVM CLASS.
151
152If STREAM non-nil, output a verbose description to the named output stream.
153
154CLASS may either be a string naming a fully qualified JVM class in dot
155notation, or a symbol resolved against all class entries in the
156current classpath.
157\end{adjustwidth}
158
159\paragraph{}
160\label{JSS:JCLASS-ALL-INTERFACES}
161\index{JCLASS-ALL-INTERFACES}
162--- Function: \textbf{jclass-all-interfaces} [\textbf{jss}] \textit{class}
163
164\begin{adjustwidth}{5em}{5em}
165Return a list of interfaces the class implements
166\end{adjustwidth}
167
168\paragraph{}
169\label{JSS:JCMN}
170\index{JCMN}
171--- Function: \textbf{jcmn} [\textbf{jss}] \textit{class \&optional stream}
172
173\begin{adjustwidth}{5em}{5em}
174Return a list of the public methods encapsulated by the JVM CLASS.
175
176If STREAM non-nil, output a verbose description to the named output stream.
177
178CLASS may either be a string naming a fully qualified JVM class in dot
179notation, or a symbol resolved against all class entries in the
180current classpath.
181\end{adjustwidth}
182
183\paragraph{}
184\label{JSS:JLIST-TO-LIST}
185\index{JLIST-TO-LIST}
186--- Function: \textbf{jlist-to-list} [\textbf{jss}] \textit{list}
187
188\begin{adjustwidth}{5em}{5em}
189Convert a LIST implementing java.util.List to a Lisp list.
190\end{adjustwidth}
191
192\paragraph{}
193\label{JSS:LIST-TO-LIST}
194\index{LIST-TO-LIST}
195--- Function: \textbf{list-to-list} [\textbf{jss}] \textit{list}
196
197\begin{adjustwidth}{5em}{5em}
198not-documented
199\end{adjustwidth}
200
201\paragraph{}
202\label{JSS:NEW}
203\index{NEW}
204--- Function: \textbf{new} [\textbf{jss}] \textit{class-name \&rest args}
205
206\begin{adjustwidth}{5em}{5em}
207Invoke the Java constructor for CLASS-NAME with ARGS.
208
209CLASS-NAME may either be a symbol or a string according to the usual JSS conventions.
210\end{adjustwidth}
211
212\paragraph{}
213\label{JSS:SET-JAVA-FIELD}
214\index{SET-JAVA-FIELD}
215--- Function: \textbf{set-java-field} [\textbf{jss}] \textit{object field value \&optional (try-harder *running-in-osgi*)}
216
217\begin{adjustwidth}{5em}{5em}
218Set the FIELD of OBJECT to VALUE.
219If OBJECT is a symbol, it names a dot qualified Java class to look for
220a static FIELD.  If OBJECT is an instance of java:java-object, the
221associated is used to look up the static FIELD.
222\end{adjustwidth}
223
224\paragraph{}
225\label{JSS:SET-TO-LIST}
226\index{SET-TO-LIST}
227--- Function: \textbf{set-to-list} [\textbf{jss}] \textit{set}
228
229\begin{adjustwidth}{5em}{5em}
230Convert the java.util.Set named in SET to a Lisp list.
231\end{adjustwidth}
232
233\paragraph{}
234\label{JSS:VECTOR-TO-LIST}
235\index{VECTOR-TO-LIST}
236--- Function: \textbf{vector-to-list} [\textbf{jss}] \textit{vector}
237
238\begin{adjustwidth}{5em}{5em}
239Return the elements of java.lang.Vector VECTOR as a list.
240\end{adjustwidth}
241
242\paragraph{}
243\label{JSS:WITH-CONSTANT-SIGNATURE}
244\index{WITH-CONSTANT-SIGNATURE}
245--- Macro: \textbf{with-constant-signature} [\textbf{jss}] \textit{}
246
247\begin{adjustwidth}{5em}{5em}
248Expand all references to FNAME-JNAME-PAIRS in BODY into static function calls promising that the same function bound in the FNAME-JNAME-PAIRS will be invoked with the same argument signature.
249
250FNAME-JNAME-PAIRS is a list of (symbol function \&optional raw)
251elements where symbol will be the symbol bound to the method named by
252the string function.  If the optional parameter raw is non-nil, the
253result will be the raw JVM object, uncoerced by the usual conventions.
254
255Use this macro if you are making a lot of calls and
256want to avoid the overhead of the dynamic dispatch.
257\end{adjustwidth}
258
Note: See TracBrowser for help on using the repository browser.