| 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} |
|---|
| 7 | Whether 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} |
|---|
| 16 | Whether 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} |
|---|
| 25 | Attempt to make JSS less chatting about how things are going. |
|---|
| 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} |
|---|
| 34 | Load 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} |
|---|
| 43 | Ensure 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} |
|---|
| 52 | not-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} |
|---|
| 61 | Get the value of the FIELD contained in OBJECT. |
|---|
| 62 | If 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} |
|---|
| 71 | Converts the a HASHMAP reference to a java.util.HashMap object to a Lisp hashtable. |
|---|
| 72 | |
|---|
| 73 | The REST paramter specifies arguments to the underlying MAKE-HASH-TABLE call. |
|---|
| 74 | |
|---|
| 75 | KEYFUN and VALFUN specifies functions to be run on the keys and values |
|---|
| 76 | of the HASHMAP right before they are placed in the hashtable. |
|---|
| 77 | |
|---|
| 78 | If 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} |
|---|
| 87 | Push 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} |
|---|
| 96 | not-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} |
|---|
| 105 | Return 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} |
|---|
| 114 | Attempt to construct a Lisp list out of a Java THING. |
|---|
| 115 | |
|---|
| 116 | THING may be a wide range of Java collection types, their common |
|---|
| 117 | iterators or a Java array. |
|---|
| 118 | \end{adjustwidth} |
|---|
| 119 | |
|---|
| 120 | \paragraph{} |
|---|
| 121 | \label{JSS:JAPROPOS} |
|---|
| 122 | \index{JAPROPOS} |
|---|
| 123 | --- Function: \textbf{japropos} [\textbf{jss}] \textit{string} |
|---|
| 124 | |
|---|
| 125 | \begin{adjustwidth}{5em}{5em} |
|---|
| 126 | Output the names of all Java class names loaded in the current process which match STRING.. |
|---|
| 127 | \end{adjustwidth} |
|---|
| 128 | |
|---|
| 129 | \paragraph{} |
|---|
| 130 | \label{JSS:JAR-IMPORT} |
|---|
| 131 | \index{JAR-IMPORT} |
|---|
| 132 | --- Function: \textbf{jar-import} [\textbf{jss}] \textit{file} |
|---|
| 133 | |
|---|
| 134 | \begin{adjustwidth}{5em}{5em} |
|---|
| 135 | Import all the Java classes contained in the pathname FILE into the JSS dynamic lookup cache. |
|---|
| 136 | \end{adjustwidth} |
|---|
| 137 | |
|---|
| 138 | \paragraph{} |
|---|
| 139 | \label{JSS:JARRAY-TO-LIST} |
|---|
| 140 | \index{JARRAY-TO-LIST} |
|---|
| 141 | --- Function: \textbf{jarray-to-list} [\textbf{jss}] \textit{jarray} |
|---|
| 142 | |
|---|
| 143 | \begin{adjustwidth}{5em}{5em} |
|---|
| 144 | Convert the Java array named by JARRARY into a Lisp list. |
|---|
| 145 | \end{adjustwidth} |
|---|
| 146 | |
|---|
| 147 | \paragraph{} |
|---|
| 148 | \label{JSS:JAVA-CLASS-METHOD-NAMES} |
|---|
| 149 | \index{JAVA-CLASS-METHOD-NAMES} |
|---|
| 150 | --- Function: \textbf{java-class-method-names} [\textbf{jss}] \textit{class \&optional stream} |
|---|
| 151 | |
|---|
| 152 | \begin{adjustwidth}{5em}{5em} |
|---|
| 153 | Return a list of the public methods encapsulated by the JVM CLASS. |
|---|
| 154 | |
|---|
| 155 | If STREAM non-nil, output a verbose description to the named output stream. |
|---|
| 156 | |
|---|
| 157 | CLASS may either be a string naming a fully qualified JVM class in dot |
|---|
| 158 | notation, or a symbol resolved against all class entries in the |
|---|
| 159 | current classpath. |
|---|
| 160 | \end{adjustwidth} |
|---|
| 161 | |
|---|
| 162 | \paragraph{} |
|---|
| 163 | \label{JSS:JCLASS-ALL-INTERFACES} |
|---|
| 164 | \index{JCLASS-ALL-INTERFACES} |
|---|
| 165 | --- Function: \textbf{jclass-all-interfaces} [\textbf{jss}] \textit{class} |
|---|
| 166 | |
|---|
| 167 | \begin{adjustwidth}{5em}{5em} |
|---|
| 168 | Return a list of interfaces the class implements |
|---|
| 169 | \end{adjustwidth} |
|---|
| 170 | |
|---|
| 171 | \paragraph{} |
|---|
| 172 | \label{JSS:JCMN} |
|---|
| 173 | \index{JCMN} |
|---|
| 174 | --- Function: \textbf{jcmn} [\textbf{jss}] \textit{class \&optional stream} |
|---|
| 175 | |
|---|
| 176 | \begin{adjustwidth}{5em}{5em} |
|---|
| 177 | Return a list of the public methods encapsulated by the JVM CLASS. |
|---|
| 178 | |
|---|
| 179 | If STREAM non-nil, output a verbose description to the named output stream. |
|---|
| 180 | |
|---|
| 181 | CLASS may either be a string naming a fully qualified JVM class in dot |
|---|
| 182 | notation, or a symbol resolved against all class entries in the |
|---|
| 183 | current classpath. |
|---|
| 184 | \end{adjustwidth} |
|---|
| 185 | |
|---|
| 186 | \paragraph{} |
|---|
| 187 | \label{JSS:JLIST-TO-LIST} |
|---|
| 188 | \index{JLIST-TO-LIST} |
|---|
| 189 | --- Function: \textbf{jlist-to-list} [\textbf{jss}] \textit{list} |
|---|
| 190 | |
|---|
| 191 | \begin{adjustwidth}{5em}{5em} |
|---|
| 192 | Convert a LIST implementing java.util.List to a Lisp list. |
|---|
| 193 | \end{adjustwidth} |
|---|
| 194 | |
|---|
| 195 | \paragraph{} |
|---|
| 196 | \label{JSS:JMAP} |
|---|
| 197 | \index{JMAP} |
|---|
| 198 | --- Function: \textbf{jmap} [\textbf{jss}] \textit{function thing} |
|---|
| 199 | |
|---|
| 200 | \begin{adjustwidth}{5em}{5em} |
|---|
| 201 | Call FUNCTION for every element in the THING. Returns NIL. |
|---|
| 202 | |
|---|
| 203 | THING may be a wide range of Java collection types, their common iterators or |
|---|
| 204 | a Java array. |
|---|
| 205 | |
|---|
| 206 | In case the THING is a map-like object, FUNCTION will be called with two |
|---|
| 207 | arguments, key and value. |
|---|
| 208 | \end{adjustwidth} |
|---|
| 209 | |
|---|
| 210 | \paragraph{} |
|---|
| 211 | \label{JSS:JTYPECASE} |
|---|
| 212 | \index{JTYPECASE} |
|---|
| 213 | --- Macro: \textbf{jtypecase} [\textbf{jss}] \textit{} |
|---|
| 214 | |
|---|
| 215 | \begin{adjustwidth}{5em}{5em} |
|---|
| 216 | JTYPECASE Keyform {(Type Form*)}* |
|---|
| 217 | Evaluates the Forms in the first clause for which Type names a class that Keyform isInstance of |
|---|
| 218 | is true. |
|---|
| 219 | \end{adjustwidth} |
|---|
| 220 | |
|---|
| 221 | \paragraph{} |
|---|
| 222 | \label{JSS:JTYPEP} |
|---|
| 223 | \index{JTYPEP} |
|---|
| 224 | --- Function: \textbf{jtypep} [\textbf{jss}] \textit{object type} |
|---|
| 225 | |
|---|
| 226 | \begin{adjustwidth}{5em}{5em} |
|---|
| 227 | not-documented |
|---|
| 228 | \end{adjustwidth} |
|---|
| 229 | |
|---|
| 230 | \paragraph{} |
|---|
| 231 | \label{JSS:LIST-TO-LIST} |
|---|
| 232 | \index{LIST-TO-LIST} |
|---|
| 233 | --- Function: \textbf{list-to-list} [\textbf{jss}] \textit{list} |
|---|
| 234 | |
|---|
| 235 | \begin{adjustwidth}{5em}{5em} |
|---|
| 236 | not-documented |
|---|
| 237 | \end{adjustwidth} |
|---|
| 238 | |
|---|
| 239 | \paragraph{} |
|---|
| 240 | \label{JSS:NEW} |
|---|
| 241 | \index{NEW} |
|---|
| 242 | --- Function: \textbf{new} [\textbf{jss}] \textit{class-name \&rest args} |
|---|
| 243 | |
|---|
| 244 | \begin{adjustwidth}{5em}{5em} |
|---|
| 245 | Invoke the Java constructor for CLASS-NAME with ARGS. |
|---|
| 246 | |
|---|
| 247 | CLASS-NAME may either be a symbol or a string according to the usual JSS conventions. |
|---|
| 248 | \end{adjustwidth} |
|---|
| 249 | |
|---|
| 250 | \paragraph{} |
|---|
| 251 | \label{JSS:SET-JAVA-FIELD} |
|---|
| 252 | \index{SET-JAVA-FIELD} |
|---|
| 253 | --- Function: \textbf{set-java-field} [\textbf{jss}] \textit{object field value \&optional (try-harder *running-in-osgi*)} |
|---|
| 254 | |
|---|
| 255 | \begin{adjustwidth}{5em}{5em} |
|---|
| 256 | Set the FIELD of OBJECT to VALUE. |
|---|
| 257 | If OBJECT is a symbol, it names a dot qualified Java class to look for |
|---|
| 258 | a static FIELD. If OBJECT is an instance of java:java-object, the |
|---|
| 259 | associated is used to look up the static FIELD. |
|---|
| 260 | \end{adjustwidth} |
|---|
| 261 | |
|---|
| 262 | \paragraph{} |
|---|
| 263 | \label{JSS:SET-TO-LIST} |
|---|
| 264 | \index{SET-TO-LIST} |
|---|
| 265 | --- Function: \textbf{set-to-list} [\textbf{jss}] \textit{set} |
|---|
| 266 | |
|---|
| 267 | \begin{adjustwidth}{5em}{5em} |
|---|
| 268 | Convert the java.util.Set named in SET to a Lisp list. |
|---|
| 269 | \end{adjustwidth} |
|---|
| 270 | |
|---|
| 271 | \paragraph{} |
|---|
| 272 | \label{JSS:TO-HASHSET} |
|---|
| 273 | \index{TO-HASHSET} |
|---|
| 274 | --- Function: \textbf{to-hashset} [\textbf{jss}] \textit{list} |
|---|
| 275 | |
|---|
| 276 | \begin{adjustwidth}{5em}{5em} |
|---|
| 277 | Convert LIST to the java.util.HashSet contract |
|---|
| 278 | \end{adjustwidth} |
|---|
| 279 | |
|---|
| 280 | \paragraph{} |
|---|
| 281 | \label{JSS:VECTOR-TO-LIST} |
|---|
| 282 | \index{VECTOR-TO-LIST} |
|---|
| 283 | --- Function: \textbf{vector-to-list} [\textbf{jss}] \textit{vector} |
|---|
| 284 | |
|---|
| 285 | \begin{adjustwidth}{5em}{5em} |
|---|
| 286 | Return the elements of java.lang.Vector VECTOR as a list. |
|---|
| 287 | \end{adjustwidth} |
|---|
| 288 | |
|---|
| 289 | \paragraph{} |
|---|
| 290 | \label{JSS:WITH-CONSTANT-SIGNATURE} |
|---|
| 291 | \index{WITH-CONSTANT-SIGNATURE} |
|---|
| 292 | --- Macro: \textbf{with-constant-signature} [\textbf{jss}] \textit{} |
|---|
| 293 | |
|---|
| 294 | \begin{adjustwidth}{5em}{5em} |
|---|
| 295 | Expand 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. |
|---|
| 296 | |
|---|
| 297 | FNAME-JNAME-PAIRS is a list of (symbol function \&optional raw) |
|---|
| 298 | elements where symbol will be the symbol bound to the method named by |
|---|
| 299 | the string function. If the optional parameter raw is non-nil, the |
|---|
| 300 | result will be the raw JVM object, uncoerced by the usual conventions. |
|---|
| 301 | |
|---|
| 302 | Use this macro if you are making a lot of calls and |
|---|
| 303 | want to avoid the overhead of the dynamic dispatch. |
|---|
| 304 | \end{adjustwidth} |
|---|
| 305 | |
|---|