From c012f55efda29f09179e921cf148d79deb57616e Mon Sep 17 00:00:00 2001 From: Nick Shipp Date: Sun, 7 May 2017 09:04:01 -0400 Subject: Much maturering of vim configs --- .../slimv/ftplugin/clojure/slimv-clojure.vim | 200 + vim/bundle/slimv/ftplugin/iterm.applescript | 66 + vim/bundle/slimv/ftplugin/lisp/slimv-lisp.vim | 199 + vim/bundle/slimv/ftplugin/r/slimv-r.vim | 60 + vim/bundle/slimv/ftplugin/scheme/slimv-scheme.vim | 91 + vim/bundle/slimv/ftplugin/slimv-clhs.vim | 2236 ++++++++++++ vim/bundle/slimv/ftplugin/slimv-cljapi.vim | 759 ++++ vim/bundle/slimv/ftplugin/slimv-javadoc.vim | 3820 ++++++++++++++++++++ vim/bundle/slimv/ftplugin/slimv.vim | 3676 +++++++++++++++++++ vim/bundle/slimv/ftplugin/swank.py | 1373 +++++++ 10 files changed, 12480 insertions(+) create mode 100644 vim/bundle/slimv/ftplugin/clojure/slimv-clojure.vim create mode 100755 vim/bundle/slimv/ftplugin/iterm.applescript create mode 100644 vim/bundle/slimv/ftplugin/lisp/slimv-lisp.vim create mode 100644 vim/bundle/slimv/ftplugin/r/slimv-r.vim create mode 100644 vim/bundle/slimv/ftplugin/scheme/slimv-scheme.vim create mode 100644 vim/bundle/slimv/ftplugin/slimv-clhs.vim create mode 100644 vim/bundle/slimv/ftplugin/slimv-cljapi.vim create mode 100644 vim/bundle/slimv/ftplugin/slimv-javadoc.vim create mode 100644 vim/bundle/slimv/ftplugin/slimv.vim create mode 100644 vim/bundle/slimv/ftplugin/swank.py (limited to 'vim/bundle/slimv/ftplugin') diff --git a/vim/bundle/slimv/ftplugin/clojure/slimv-clojure.vim b/vim/bundle/slimv/ftplugin/clojure/slimv-clojure.vim new file mode 100644 index 0000000..3b7b8cc --- /dev/null +++ b/vim/bundle/slimv/ftplugin/clojure/slimv-clojure.vim @@ -0,0 +1,200 @@ +" slimv-clojure.vim: +" Clojure filetype plugin for Slimv +" Version: 0.9.13 +" Last Change: 04 May 2014 +" Maintainer: Tamas Kovacs +" License: This file is placed in the public domain. +" No warranty, express or implied. +" *** *** Use At-Your-Own-Risk! *** *** +" +" ===================================================================== +" +" Load Once: +if exists("b:slimv_did_ftplugin") || exists("g:slimv_disable_clojure") + finish +endif + +" ---------- Begin part loaded once ---------- +if !exists( 'g:slimv_clojure_loaded' ) + +let g:slimv_clojure_loaded = 1 + +" Transform filename so that it will not contain spaces +function! s:TransformFilename( name ) + if match( a:name, ' ' ) >= 0 + return fnamemodify( a:name , ':8' ) + else + return a:name + endif +endfunction + +" Build a Clojure startup command by adding +" all clojure*.jar files found to the classpath +function! s:BuildStartCmd( lisps ) + let cp = s:TransformFilename( a:lisps[0] ) + let i = 1 + while i < len( a:lisps ) + let cp = cp . ';' . s:TransformFilename( a:lisps[i] ) + let i = i + 1 + endwhile + + " Try to find swank-clojure and add it to classpath + let swanks = split( globpath( &runtimepath, 'swank-clojure'), '\n' ) + if len( swanks ) > 0 + let cp = cp . ';' . s:TransformFilename( swanks[0] ) + endif + return ['java -cp ' . cp . ' clojure.main', 'clojure'] +endfunction + +" Try to autodetect Clojure executable +" Returns list [Clojure executable, Clojure implementation] +function! SlimvAutodetect( preferred ) + " Firts try the most basic setup: everything in the path + if executable( 'lein' ) + return ['"lein repl"', 'clojure'] + endif + if executable( 'cake' ) + return ['"cake repl"', 'clojure'] + endif + if executable( 'clojure' ) + return ['clojure', 'clojure'] + endif + let lisps = [] + if executable( 'clojure.jar' ) + let lisps = ['clojure.jar'] + endif + if executable( 'clojure-contrib.jar' ) + let lisps = lisps + 'clojure-contrib.jar' + endif + if len( lisps ) > 0 + return s:BuildStartCmd( lisps ) + endif + + " Check if Clojure is bundled with Slimv + let lisps = split( globpath( &runtimepath, 'swank-clojure/clojure*.jar'), '\n' ) + if len( lisps ) > 0 + return s:BuildStartCmd( lisps ) + endif + + " Try to find Clojure in the PATH + let path = substitute( $PATH, ';', ',', 'g' ) + let lisps = split( globpath( path, 'clojure*.jar' ), '\n' ) + if len( lisps ) > 0 + return s:BuildStartCmd( lisps ) + endif + + if g:slimv_windows + " Try to find Clojure on the standard installation places + let lisps = split( globpath( 'c:/*clojure*,c:/*clojure*/lib', 'clojure*.jar' ), '\n' ) + if len( lisps ) > 0 + return s:BuildStartCmd( lisps ) + endif + else + " Try to find Clojure in the home directory + let lisps = split( globpath( '/usr/local/bin/*clojure*', 'clojure*.jar' ), '\n' ) + if len( lisps ) > 0 + return s:BuildStartCmd( lisps ) + endif + let lisps = split( globpath( '~/*clojure*', 'clojure*.jar' ), '\n' ) + if len( lisps ) > 0 + return s:BuildStartCmd( lisps ) + endif + endif + + return ['', ''] +endfunction + +" Try to find out the Clojure implementation +function! SlimvImplementation() + if exists( 'g:slimv_impl' ) && g:slimv_impl != '' + " Return Lisp implementation if defined + return tolower( g:slimv_impl ) + endif + + return 'clojure' +endfunction + +" Try to autodetect SWANK and build the command to load the SWANK server +function! SlimvSwankLoader() + " First autodetect Leiningen and Cake + if executable( 'lein' ) + if globpath( '~/.lein/plugins', 'lein-ritz*.jar' ) != '' + return '"lein ritz ' . g:swank_port . '"' + else + return '"lein swank"' + endif + elseif executable( 'cake' ) + return '"cake swank"' + else + " Check if swank-clojure is bundled with Slimv + let swanks = split( globpath( &runtimepath, 'swank-clojure/swank/swank.clj'), '\n' ) + if len( swanks ) == 0 + return '' + endif + let sclj = substitute( swanks[0], '\', '/', "g" ) + return g:slimv_lisp . ' -i "' . sclj . '" -e "(swank.swank/start-repl)" -r' + endif +endfunction + +" Filetype specific initialization for the REPL buffer +function! SlimvInitRepl() + set filetype=clojure +endfunction + +" Lookup symbol in the list of Clojure Hyperspec symbol databases +function! SlimvHyperspecLookup( word, exact, all ) + if !exists( 'g:slimv_cljapi_loaded' ) + runtime ftplugin/**/slimv-cljapi.vim + endif + + if !exists( 'g:slimv_javadoc_loaded' ) + runtime ftplugin/**/slimv-javadoc.vim + endif + + let symbol = [] + if exists( 'g:slimv_cljapi_db' ) + let symbol = SlimvFindSymbol( a:word, a:exact, a:all, g:slimv_cljapi_db, g:slimv_cljapi_root, symbol ) + endif + if exists( 'g:slimv_javadoc_db' ) + let symbol = SlimvFindSymbol( a:word, a:exact, a:all, g:slimv_javadoc_db, g:slimv_javadoc_root, symbol ) + endif + if exists( 'g:slimv_cljapi_user_db' ) + " Give a choice for the user to extend the symbol database + if exists( 'g:slimv_cljapi_user_root' ) + let user_root = g:slimv_cljapi_user_root + else + let user_root = '' + endif + let symbol = SlimvFindSymbol( a:word, a:exact, a:all, g:slimv_cljapi_user_db, user_root, symbol ) + endif + return symbol +endfunction + +" Implementation specific REPL initialization +function! SlimvReplInit( lisp_version ) + " Import functions commonly used in REPL but not present when not running in repl mode + if a:lisp_version[0:2] >= '1.3' + call SlimvSendSilent( ["(use '[clojure.repl :only (source apropos dir pst doc find-doc)])", + \ "(use '[clojure.java.javadoc :only (javadoc)])", + \ "(use '[clojure.pprint :only (pp pprint)])"] ) + elseif a:lisp_version[0:2] >= '1.2' + call SlimvSendSilent( ["(use '[clojure.repl :only (source apropos)])", + \ "(use '[clojure.java.javadoc :only (javadoc)])", + \ "(use '[clojure.pprint :only (pp pprint)])"] ) + endif +endfunction + +" Source Slimv general part +runtime ftplugin/**/slimv.vim + +endif "!exists( 'g:slimv_clojure_loaded' ) +" ---------- End of part loaded once ---------- + +runtime ftplugin/**/lisp.vim + +" Must be called for each lisp buffer +call SlimvInitBuffer() + +" Don't initiate Slimv again for this buffer +let b:slimv_did_ftplugin = 1 + diff --git a/vim/bundle/slimv/ftplugin/iterm.applescript b/vim/bundle/slimv/ftplugin/iterm.applescript new file mode 100755 index 0000000..28923d8 --- /dev/null +++ b/vim/bundle/slimv/ftplugin/iterm.applescript @@ -0,0 +1,66 @@ +#! /usr/bin/osascript +-- joinList from Geert Vanderkelen @ bit.ly/1gRPYbH +-- toDo push new terminal to background after creation +to joinList(aList, delimiter) + set retVal to "" + set prevDelimiter to AppleScript's text item delimiters + set AppleScript's text item delimiters to delimiter + set retVal to aList as string + set AppleScript's text item delimiters to prevDelimiter + return retVal +end joinList + +-- theSplit from iTerm version check example @ https://goo.gl/dSbQYU +on theSplit(theString, theDelimiter) + set oldDelimiters to AppleScript's text item delimiters + set AppleScript's text item delimiters to theDelimiter + set theArray to every text item of theString + set AppleScript's text item delimiters to oldDelimiters + return theArray +end theSplit + +-- IsModernVersion from iTerm version check example @ https://goo.gl/dSbQYU +on IsModernVersion(version) + set myArray to my theSplit(version, ".") + set major to item 1 of myArray + set minor to item 2 of myArray + set veryMinor to item 3 of myArray + + if major < 2 then + return false + end if + if major > 2 then + return true + end if + if minor < 9 then + return false + end if + if minor > 9 then + return true + end if + if veryMinor < 20140903 then + return false + end if + return true +end IsModernVersion + +on run arg + set thecommand to joinList(arg, " ") + tell application "iTerm" + activate + if my IsModernVersion(version) then + set myterm to (create window with default profile) + set mysession to current session of myterm + else + set myterm to (make new teminal) + tell myterm + set mysession to (launch session "Default") + end tell + end if + tell myterm + tell mysession + write text thecommand + end tell + end tell + end tell +end run diff --git a/vim/bundle/slimv/ftplugin/lisp/slimv-lisp.vim b/vim/bundle/slimv/ftplugin/lisp/slimv-lisp.vim new file mode 100644 index 0000000..139d28b --- /dev/null +++ b/vim/bundle/slimv/ftplugin/lisp/slimv-lisp.vim @@ -0,0 +1,199 @@ +" slimv-lisp.vim: +" Lisp filetype plugin for Slimv +" Version: 0.9.13 +" Last Change: 04 May 2014 +" Maintainer: Tamas Kovacs +" License: This file is placed in the public domain. +" No warranty, express or implied. +" *** *** Use At-Your-Own-Risk! *** *** +" +" ===================================================================== +" +" Load Once: +if exists("b:did_ftplugin") || exists("g:slimv_disable_lisp") + finish +endif + +" Handle cases when lisp dialects explicitly use the lisp filetype plugins +if &ft == "clojure" && exists("g:slimv_disable_clojure") + finish +endif + +if &ft == "scheme" && exists("g:slimv_disable_scheme") + finish +endif + +" ---------- Begin part loaded once ---------- +if !exists( 'g:slimv_lisp_loaded' ) + +let g:slimv_lisp_loaded = 1 + +" Descriptor array for various lisp implementations +" The structure of an array element is: +" [ executable, implementation, platform, search path] +" where: +" executable - may contain wildcards but only if a search path is present +" platform - 'w' (Windows) or 'l' (Linux = non-Windows), '' for all +" search path - commma separated list, may contain wildcard characters +let s:lisp_desc = [ +\ [ 'sbcl', 'sbcl', '', '' ], +\ [ 'clisp', 'clisp', '', '' ], +\ [ 'gcl', 'clisp', '', '' ], +\ [ 'cmucl', 'cmu', '', '' ], +\ [ 'ecl', 'ecl', '', '' ], +\ [ 'acl', 'allegro', '', '' ], +\ [ 'mlisp', 'allegro', '', '' ], +\ [ 'mlisp8', 'allegro', '', '' ], +\ [ 'alisp', 'allegro', '', '' ], +\ [ 'alisp8', 'allegro', '', '' ], +\ [ 'lwl', 'lispworks', '', '' ], +\ [ 'ccl', 'clozure', '', '' ], +\ [ 'wx86cl64', 'clozure', 'w64', '' ], +\ [ 'wx86cl', 'clozure', 'w', '' ], +\ [ 'lx86cl', 'clozure', 'l', '' ], +\ [ '*lisp.exe', 'clisp', 'w', +\ 'c:/*lisp*,c:/*lisp*/*,c:/*lisp*/bin/*,c:/Program Files/*lisp*,c:/Program Files/*lisp*/*,c:/Program Files/*lisp*/bin/*' ], +\ [ 'gcl.exe', 'clisp', 'w', 'c:/gcl*,c:/Program Files/gcl*' ], +\ [ 'cmucl.exe', 'cmu', 'w', 'c:/cmucl*,c:/Program Files/cmucl*' ], +\ [ '*lisp*.exe', 'allegro', 'w', 'c:/acl*,c:/Program Files/acl*,c:/Program Files/*lisp*/bin/acl*' ], +\ [ 'ecl.exe', 'ecl', 'w', 'c:/ecl*,c:/Program Files/ecl*' ], +\ [ 'wx86cl64.exe', 'clozure', 'w64', 'c:/ccl*,c:/Program Files/ccl*,c:/Program Files/*lisp*/bin/ccl*' ], +\ [ 'wx86cl.exe', 'clozure', 'w', 'c:/ccl*,c:/Program Files/ccl*,c:/Program Files/*lisp*/bin/ccl*' ], +\ [ 'sbcl.exe', 'sbcl', 'w', 'c:/sbcl*,c:/Program Files/sbcl*,c:/Program Files/*lisp*/bin/sbcl*'] ] + +" Try to autodetect Lisp executable +" Returns list [Lisp executable, Lisp implementation] +function! SlimvAutodetect( preferred ) + for lisp in s:lisp_desc + if lisp[2] =~ 'w' && !g:slimv_windows + " Valid only on Windows + elseif lisp[2] == 'w64' && $ProgramW6432 == '' + " Valid only on 64 bit Windows + elseif lisp[2] == 'l' && g:slimv_windows + " Valid only on Linux + elseif a:preferred != '' && a:preferred != lisp[1] + " Not the preferred implementation + elseif lisp[3] != '' + " A search path is given + let lisps = split( globpath( lisp[3], lisp[0] ), '\n' ) + if len( lisps ) > 0 + return [lisps[0], lisp[1]] + endif + else + " Single executable is given without path + if executable( lisp[0] ) + return lisp[0:1] + endif + endif + endfor + return ['', ''] +endfunction + +" Try to find out the Lisp implementation +function! SlimvImplementation() + if exists( 'g:slimv_impl' ) && g:slimv_impl != '' + " Return Lisp implementation if defined + return tolower( g:slimv_impl ) + endif + + let lisp = tolower( g:slimv_lisp ) + if match( lisp, 'sbcl' ) >= 0 + return 'sbcl' + endif + if match( lisp, 'cmu' ) >= 0 + return 'cmu' + endif + if match( lisp, 'acl' ) >= 0 || match( lisp, 'alisp' ) >= 0 || match( lisp, 'mlisp' ) >= 0 + return 'allegro' + endif + if match( lisp, 'ecl' ) >= 0 + return 'ecl' + endif + if match( lisp, 'x86cl' ) >= 0 + return 'clozure' + endif + if match( lisp, 'lwl' ) >= 0 + return 'lispworks' + endif + + return 'clisp' +endfunction + +" Try to autodetect SWANK and build the command to load the SWANK server +function! SlimvSwankLoader() + " First check if SWANK is bundled with Slimv + let swanks = split( globpath( &runtimepath, 'slime/start-swank.lisp'), '\n' ) + if len( swanks ) == 0 + " Try to find SWANK in the standard SLIME installation locations + if g:slimv_windows || g:slimv_cygwin + let swanks = split( globpath( 'c:/slime/,c:/*lisp*/slime/,c:/*lisp*/site/lisp/slime/,c:/Program Files/*lisp*/site/lisp/slime/', 'start-swank.lisp' ), '\n' ) + else + let swanks = split( globpath( '/usr/share/common-lisp/source/slime/', 'start-swank.lisp' ), '\n' ) + endif + endif + if len( swanks ) == 0 + return '' + endif + + " Build proper SWANK loader command for the Lisp implementation used + if g:slimv_impl == 'sbcl' + return '"' . g:slimv_lisp . '" --load "' . swanks[0] . '"' + elseif g:slimv_impl == 'clisp' + return '"' . g:slimv_lisp . '" -i "' . swanks[0] . '"' + elseif g:slimv_impl == 'allegro' + return '"' . g:slimv_lisp . '" -L "' . swanks[0] . '"' + elseif g:slimv_impl == 'cmu' + return '"' . g:slimv_lisp . '" -load "' . swanks[0] . '"' + else + return '"' . g:slimv_lisp . '" -l "' . swanks[0] . '"' + endif +endfunction + +" Filetype specific initialization for the REPL buffer +function! SlimvInitRepl() + set filetype=lisp +endfunction + +" Lookup symbol in the list of Lisp Hyperspec symbol databases +function! SlimvHyperspecLookup( word, exact, all ) + if !exists( 'g:slimv_clhs_loaded' ) + runtime ftplugin/**/slimv-clhs.vim + endif + + let symbol = [] + if exists( 'g:slimv_clhs_loaded' ) + let symbol = SlimvFindSymbol( a:word, a:exact, a:all, g:slimv_clhs_clhs, g:slimv_clhs_root, symbol ) + let symbol = SlimvFindSymbol( a:word, a:exact, a:all, g:slimv_clhs_issues, g:slimv_clhs_root, symbol ) + let symbol = SlimvFindSymbol( a:word, a:exact, a:all, g:slimv_clhs_chapters, g:slimv_clhs_root, symbol ) + let symbol = SlimvFindSymbol( a:word, a:exact, a:all, g:slimv_clhs_control_chars, g:slimv_clhs_root, symbol ) + let symbol = SlimvFindSymbol( a:word, a:exact, a:all, g:slimv_clhs_macro_chars, g:slimv_clhs_root, symbol ) + let symbol = SlimvFindSymbol( a:word, a:exact, a:all, g:slimv_clhs_loop, g:slimv_clhs_root, symbol ) + let symbol = SlimvFindSymbol( a:word, a:exact, a:all, g:slimv_clhs_arguments, g:slimv_clhs_root, symbol ) + let symbol = SlimvFindSymbol( a:word, a:exact, a:all, g:slimv_clhs_glossary, g:slimv_clhs_root, symbol ) + endif + if exists( 'g:slimv_clhs_user_db' ) + " Give a choice for the user to extend the symbol database + if exists( 'g:slimv_clhs_user_root' ) + let user_root = g:slimv_clhs_user_root + else + let user_root = '' + endif + let symbol = SlimvFindSymbol( a:word, a:exact, a:all, g:slimv_clhs_user_db, user_root, symbol ) + endif + return symbol +endfunction + +" Source Slimv general part +runtime ftplugin/**/slimv.vim + +endif "!exists( 'g:slimv_lisp_loaded' ) +" ---------- End of part loaded once ---------- + +runtime ftplugin/**/lisp.vim + +" Must be called for each lisp buffer +call SlimvInitBuffer() + +" Don't load another plugin for this buffer +let b:did_ftplugin = 1 + diff --git a/vim/bundle/slimv/ftplugin/r/slimv-r.vim b/vim/bundle/slimv/ftplugin/r/slimv-r.vim new file mode 100644 index 0000000..a5c8ec9 --- /dev/null +++ b/vim/bundle/slimv/ftplugin/r/slimv-r.vim @@ -0,0 +1,60 @@ +" slimv-r.vim: +" R filetype plugin for Slimv +" Version: 0.9.13 +" Last Change: 04 May 2014 +" Maintainer: Tamas Kovacs +" License: This file is placed in the public domain. +" No warranty, express or implied. +" *** *** Use At-Your-Own-Risk! *** *** +" +" ===================================================================== +" +" Load Once: +if exists("b:did_ftplugin") + finish +endif + +" ---------- Begin part loaded once ---------- +if !exists( 'g:slimv_lisp_loaded' ) + +let g:slimv_lisp_loaded = 1 + +" Try to autodetect Lisp executable +" Returns list [Lisp executable, Lisp implementation] +function! SlimvAutodetect( preferred ) + return ['R', 'R'] +endfunction + +" Try to find out the Lisp implementation +function! SlimvImplementation() + return 'R' +endfunction + +" Try to autodetect SWANK and build the command to load the SWANK server +function! SlimvSwankLoader() +endfunction + +" Filetype specific initialization for the REPL buffer +function! SlimvInitRepl() + set filetype=r +endfunction + +" Lookup symbol in the list of Lisp Hyperspec symbol databases +function! SlimvHyperspecLookup( word, exact, all ) + return [ a:word ] +endfunction + +" Source Slimv general part +runtime ftplugin/**/slimv.vim + +endif "!exists( 'g:slimv_lisp_loaded' ) +" ---------- End of part loaded once ---------- + +"runtime ftplugin/**/r.vim + +" Must be called for each lisp buffer +call SlimvInitBuffer() + +" Don't load another plugin for this buffer +let b:did_ftplugin = 1 + diff --git a/vim/bundle/slimv/ftplugin/scheme/slimv-scheme.vim b/vim/bundle/slimv/ftplugin/scheme/slimv-scheme.vim new file mode 100644 index 0000000..4a71954 --- /dev/null +++ b/vim/bundle/slimv/ftplugin/scheme/slimv-scheme.vim @@ -0,0 +1,91 @@ +" slimv-scheme.vim: +" Scheme filetype plugin for Slimv +" Version: 0.9.13 +" Last Change: 04 May 2014 +" Maintainer: Tamas Kovacs +" License: This file is placed in the public domain. +" No warranty, express or implied. +" *** *** Use At-Your-Own-Risk! *** *** +" +" ===================================================================== +" +" Load Once: +if exists("b:did_ftplugin") || exists("g:slimv_disable_scheme") + finish +endif + +" ---------- Begin part loaded once ---------- +if !exists( 'g:slimv_scheme_loaded' ) + +let g:slimv_scheme_loaded = 1 + +" Try to autodetect Scheme executable +" Returns list [Scheme executable, Scheme implementation] +function! SlimvAutodetect( preferred ) + " Currently only MIT Scheme on Linux + if executable( 'scheme' ) + " MIT Scheme + return ['scheme', 'mit'] + endif + + return ['', ''] +endfunction + +" Try to find out the Scheme implementation +function! SlimvImplementation() + if exists( 'g:slimv_impl' ) && g:slimv_impl != '' + " Return Lisp implementation if defined + return tolower( g:slimv_impl ) + endif + + return 'mit' +endfunction + +" Try to autodetect SWANK and build the command to load the SWANK server +function! SlimvSwankLoader() + if g:slimv_impl == 'mit' + if exists( 'g:scheme_builtin_swank' ) && g:scheme_builtin_swank + " MIT Scheme contains a built-in swank server since version 9.1.1 + return 'scheme --eval "(let loop () (start-swank) (loop))"' + endif + let swanks = split( globpath( &runtimepath, 'slime/contrib/swank-mit-scheme.scm'), '\n' ) + if len( swanks ) == 0 + return '' + endif + return '"' . g:slimv_lisp . '" --load "' . swanks[0] . '"' + endif + return '' +endfunction + +" Filetype specific initialization for the REPL buffer +function! SlimvInitRepl() + set filetype=scheme +endfunction + +" Lookup symbol in the Hyperspec +function! SlimvHyperspecLookup( word, exact, all ) + " No Hyperspec support for Scheme at the moment + let symbol = [] + return symbol +endfunction + +" Source Slimv general part +runtime ftplugin/**/slimv.vim + +endif "!exists( 'g:slimv_scheme_loaded' ) +" ---------- End of part loaded once ---------- + +runtime ftplugin/**/lisp.vim + +" The balloonexpr of MIT-Scheme is broken. Disable it. +let g:slimv_balloon = 0 + +" The fuzzy completion of MIT-Scheme is broken. Disable it. +let g:slimv_simple_compl = 1 + +" Must be called for each lisp buffer +call SlimvInitBuffer() + +" Don't load another plugin for this buffer +let b:did_ftplugin = 1 + diff --git a/vim/bundle/slimv/ftplugin/slimv-clhs.vim b/vim/bundle/slimv/ftplugin/slimv-clhs.vim new file mode 100644 index 0000000..e55c196 --- /dev/null +++ b/vim/bundle/slimv/ftplugin/slimv-clhs.vim @@ -0,0 +1,2236 @@ +" slimv-clhs.vim: +" Common Lisp Hyperspec lookup support for Slimv +" Version: 0.5.0 +" Last Change: 14 Apr 2009 +" Maintainer: Tamas Kovacs +" License: This file is placed in the public domain. +" No warranty, express or implied. +" *** *** Use At-Your-Own-Risk! *** *** +" Commentary: This file is based on SLIME's hyperspec.el created by +" Erik Naggum (http://common-lisp.net/project/slime/), +" and the cl-lookup package made by Yuji Minejima +" (http://homepage1.nifty.com/bmonkey/lisp/index-en.html). +" +" ===================================================================== +" +" Load Once: +if &cp || exists( 'g:slimv_clhs_loaded' ) + finish +endif + +let g:slimv_clhs_loaded = 1 + +" It is possible to lookup the following information: +" symbol , e.g. "setf" +" hyperspec-chapters , e.g. [index], [syntax] +" format-control-characters , e.g. "~C: Character", "~%: Newline" +" reader-macro-characters , e.g. "(", "#'", "#b", "#+" +" loop , e.g. loop:with, loop:collect +" arguments , e.g. :test, :key, :eof-error-p +" glossary , e.g. {absolute}, {binding} + +" Root of the Common Lisp Hyperspec +if !exists( 'g:slimv_clhs_root' ) + let g:slimv_clhs_root = 'http://www.lispworks.com/reference/HyperSpec/Body/' +endif + +if !exists( 'g:slimv_clhs_clhs' ) + let g:slimv_clhs_clhs = [ + \["&allow-other-keys", "03_da.htm"], + \["&aux", "03_da.htm"], + \["&body", "03_dd.htm"], + \["&environment", "03_dd.htm"], + \["&key", "03_da.htm"], + \["&optional", "03_da.htm"], + \["&rest", "03_da.htm"], + \["&whole", "03_dd.htm"], + \["*", "a_st.htm"], + \["**", "v__stst_.htm"], + \["***", "v__stst_.htm"], + \["*break-on-signals*", "v_break_.htm"], + \["*compile-file-pathname*", "v_cmp_fi.htm"], + \["*compile-file-truename*", "v_cmp_fi.htm"], + \["*compile-print*", "v_cmp_pr.htm"], + \["*compile-verbose*", "v_cmp_pr.htm"], + \["*debug-io*", "v_debug_.htm"], + \["*debugger-hook*", "v_debugg.htm"], + \["*default-pathname-defaults*", "v_defaul.htm"], + \["*error-output*", "v_debug_.htm"], + \["*features*", "v_featur.htm"], + \["*gensym-counter*", "v_gensym.htm"], + \["*load-pathname*", "v_ld_pns.htm"], + \["*load-print*", "v_ld_prs.htm"], + \["*load-truename*", "v_ld_pns.htm"], + \["*load-verbose*", "v_ld_prs.htm"], + \["*macroexpand-hook*", "v_mexp_h.htm"], + \["*modules*", "v_module.htm"], + \["*package*", "v_pkg.htm"], + \["*print-array*", "v_pr_ar.htm"], + \["*print-base*", "v_pr_bas.htm"], + \["*print-case*", "v_pr_cas.htm"], + \["*print-circle*", "v_pr_cir.htm"], + \["*print-escape*", "v_pr_esc.htm"], + \["*print-gensym*", "v_pr_gen.htm"], + \["*print-length*", "v_pr_lev.htm"], + \["*print-level*", "v_pr_lev.htm"], + \["*print-lines*", "v_pr_lin.htm"], + \["*print-miser-width*", "v_pr_mis.htm"], + \["*print-pprint-dispatch*", "v_pr_ppr.htm"], + \["*print-pretty*", "v_pr_pre.htm"], + \["*print-radix*", "v_pr_bas.htm"], + \["*print-readably*", "v_pr_rda.htm"], + \["*print-right-margin*", "v_pr_rig.htm"], + \["*query-io*", "v_debug_.htm"], + \["*random-state*", "v_rnd_st.htm"], + \["*read-base*", "v_rd_bas.htm"], + \["*read-default-float-format*", "v_rd_def.htm"], + \["*read-eval*", "v_rd_eva.htm"], + \["*read-suppress*", "v_rd_sup.htm"], + \["*readtable*", "v_rdtabl.htm"], + \["*standard-input*", "v_debug_.htm"], + \["*standard-output*", "v_debug_.htm"], + \["*terminal-io*", "v_termin.htm"], + \["*trace-output*", "v_debug_.htm"], + \["+", "a_pl.htm"], + \["++", "v_pl_plp.htm"], + \["+++", "v_pl_plp.htm"], + \["-", "a__.htm"], + \["/", "a_sl.htm"], + \["//", "v_sl_sls.htm"], + \["///", "v_sl_sls.htm"], + \["/=", "f_eq_sle.htm"], + \["1+", "f_1pl_1_.htm"], + \["1-", "f_1pl_1_.htm"], + \["<", "f_eq_sle.htm"], + \["<=", "f_eq_sle.htm"], + \["=", "f_eq_sle.htm"], + \[">", "f_eq_sle.htm"], + \[">=", "f_eq_sle.htm"], + \["abort", "a_abort.htm"], + \["abs", "f_abs.htm"], + \["acons", "f_acons.htm"], + \["acos", "f_asin_.htm"], + \["acosh", "f_sinh_.htm"], + \["add-method", "f_add_me.htm"], + \["adjoin", "f_adjoin.htm"], + \["adjust-array", "f_adjust.htm"], + \["adjustable-array-p", "f_adju_1.htm"], + \["allocate-instance", "f_alloca.htm"], + \["alpha-char-p", "f_alpha_.htm"], + \["alphanumericp", "f_alphan.htm"], + \["and", "a_and.htm"], + \["append", "f_append.htm"], + \["apply", "f_apply.htm"], + \["apropos", "f_apropo.htm"], + \["apropos-list", "f_apropo.htm"], + \["aref", "f_aref.htm"], + \["arithmetic-error", "e_arithm.htm"], + \["arithmetic-error-operands", "f_arithm.htm"], + \["arithmetic-error-operation", "f_arithm.htm"], + \["array", "t_array.htm"], + \["array-dimension", "f_ar_dim.htm"], + \["array-dimension-limit", "v_ar_dim.htm"], + \["array-dimensions", "f_ar_d_1.htm"], + \["array-displacement", "f_ar_dis.htm"], + \["array-element-type", "f_ar_ele.htm"], + \["array-has-fill-pointer-p", "f_ar_has.htm"], + \["array-in-bounds-p", "f_ar_in_.htm"], + \["array-rank", "f_ar_ran.htm"], + \["array-rank-limit", "v_ar_ran.htm"], + \["array-row-major-index", "f_ar_row.htm"], + \["array-total-size", "f_ar_tot.htm"], + \["array-total-size-limit", "v_ar_tot.htm"], + \["arrayp", "f_arrayp.htm"], + \["ash", "f_ash.htm"], + \["asin", "f_asin_.htm"], + \["asinh", "f_sinh_.htm"], + \["assert", "m_assert.htm"], + \["assoc", "f_assocc.htm"], + \["assoc-if", "f_assocc.htm"], + \["assoc-if-not", "f_assocc.htm"], + \["atan", "f_asin_.htm"], + \["atanh", "f_sinh_.htm"], + \["atom", "a_atom.htm"], + \["base-char", "t_base_c.htm"], + \["base-string", "t_base_s.htm"], + \["bignum", "t_bignum.htm"], + \["bit", "a_bit.htm"], + \["bit-and", "f_bt_and.htm"], + \["bit-andc1", "f_bt_and.htm"], + \["bit-andc2", "f_bt_and.htm"], + \["bit-eqv", "f_bt_and.htm"], + \["bit-ior", "f_bt_and.htm"], + \["bit-nand", "f_bt_and.htm"], + \["bit-nor", "f_bt_and.htm"], + \["bit-not", "f_bt_and.htm"], + \["bit-orc1", "f_bt_and.htm"], + \["bit-orc2", "f_bt_and.htm"], + \["bit-vector", "t_bt_vec.htm"], + \["bit-vector-p", "f_bt_vec.htm"], + \["bit-xor", "f_bt_and.htm"], + \["block", "s_block.htm"], + \["boole", "f_boole.htm"], + \["boole-1", "v_b_1_b.htm"], + \["boole-2", "v_b_1_b.htm"], + \["boole-and", "v_b_1_b.htm"], + \["boole-andc1", "v_b_1_b.htm"], + \["boole-andc2", "v_b_1_b.htm"], + \["boole-c1", "v_b_1_b.htm"], + \["boole-c2", "v_b_1_b.htm"], + \["boole-clr", "v_b_1_b.htm"], + \["boole-eqv", "v_b_1_b.htm"], + \["boole-ior", "v_b_1_b.htm"], + \["boole-nand", "v_b_1_b.htm"], + \["boole-nor", "v_b_1_b.htm"], + \["boole-orc1", "v_b_1_b.htm"], + \["boole-orc2", "v_b_1_b.htm"], + \["boole-set", "v_b_1_b.htm"], + \["boole-xor", "v_b_1_b.htm"], + \["boolean", "t_ban.htm"], + \["both-case-p", "f_upper_.htm"], + \["boundp", "f_boundp.htm"], + \["break", "f_break.htm"], + \["broadcast-stream", "t_broadc.htm"], + \["broadcast-stream-streams", "f_broadc.htm"], + \["built-in-class", "t_built_.htm"], + \["butlast", "f_butlas.htm"], + \["byte", "f_by_by.htm"], + \["byte-position", "f_by_by.htm"], + \["byte-size", "f_by_by.htm"], + \["caaaar", "f_car_c.htm"], + \["caaadr", "f_car_c.htm"], + \["caaar", "f_car_c.htm"], + \["caadar", "f_car_c.htm"], + \["caaddr", "f_car_c.htm"], + \["caadr", "f_car_c.htm"], + \["caar", "f_car_c.htm"], + \["cadaar", "f_car_c.htm"], + \["cadadr", "f_car_c.htm"], + \["cadar", "f_car_c.htm"], + \["caddar", "f_car_c.htm"], + \["cadddr", "f_car_c.htm"], + \["caddr", "f_car_c.htm"], + \["cadr", "f_car_c.htm"], + \["call-arguments-limit", "v_call_a.htm"], + \["call-method", "m_call_m.htm"], + \["call-next-method", "f_call_n.htm"], + \["car", "f_car_c.htm"], + \["case", "m_case_.htm"], + \["catch", "s_catch.htm"], + \["ccase", "m_case_.htm"], + \["cdaaar", "f_car_c.htm"], + \["cdaadr", "f_car_c.htm"], + \["cdaar", "f_car_c.htm"], + \["cdadar", "f_car_c.htm"], + \["cdaddr", "f_car_c.htm"], + \["cdadr", "f_car_c.htm"], + \["cdar", "f_car_c.htm"], + \["cddaar", "f_car_c.htm"], + \["cddadr", "f_car_c.htm"], + \["cddar", "f_car_c.htm"], + \["cdddar", "f_car_c.htm"], + \["cddddr", "f_car_c.htm"], + \["cdddr", "f_car_c.htm"], + \["cddr", "f_car_c.htm"], + \["cdr", "f_car_c.htm"], + \["ceiling", "f_floorc.htm"], + \["cell-error", "e_cell_e.htm"], + \["cell-error-name", "f_cell_e.htm"], + \["cerror", "f_cerror.htm"], + \["change-class", "f_chg_cl.htm"], + \["char", "f_char_.htm"], + \["char-code", "f_char_c.htm"], + \["char-code-limit", "v_char_c.htm"], + \["char-downcase", "f_char_u.htm"], + \["char-equal", "f_chareq.htm"], + \["char-greaterp", "f_chareq.htm"], + \["char-int", "f_char_i.htm"], + \["char-lessp", "f_chareq.htm"], + \["char-name", "f_char_n.htm"], + \["char-not-equal", "f_chareq.htm"], + \["char-not-greaterp", "f_chareq.htm"], + \["char-not-lessp", "f_chareq.htm"], + \["char-upcase", "f_char_u.htm"], + \["char/=", "f_chareq.htm"], + \["char<", "f_chareq.htm"], + \["char<=", "f_chareq.htm"], + \["char=", "f_chareq.htm"], + \["char>", "f_chareq.htm"], + \["char>=", "f_chareq.htm"], + \["character", "a_ch.htm"], + \["characterp", "f_chp.htm"], + \["check-type", "m_check_.htm"], + \["cis", "f_cis.htm"], + \["class", "t_class.htm"], + \["class-name", "f_class_.htm"], + \["class-of", "f_clas_1.htm"], + \["clear-input", "f_clear_.htm"], + \["clear-output", "f_finish.htm"], + \["close", "f_close.htm"], + \["clrhash", "f_clrhas.htm"], + \["code-char", "f_code_c.htm"], + \["coerce", "f_coerce.htm"], + \["compilation-speed", "d_optimi.htm"], + \["compile", "f_cmp.htm"], + \["compile-file", "f_cmp_fi.htm"], + \["compile-file-pathname", "f_cmp__1.htm"], + \["compiled-function", "t_cmpd_f.htm"], + \["compiled-function-p", "f_cmpd_f.htm"], + \["compiler-macro", "f_docume.htm"], + \["compiler-macro-function", "f_cmp_ma.htm"], + \["complement", "f_comple.htm"], + \["complex", "a_comple.htm"], + \["complexp", "f_comp_3.htm"], + \["compute-applicable-methods", "f_comput.htm"], + \["compute-restarts", "f_comp_1.htm"], + \["concatenate", "f_concat.htm"], + \["concatenated-stream", "t_concat.htm"], + \["concatenated-stream-streams", "f_conc_1.htm"], + \["cond", "m_cond.htm"], + \["condition", "e_cnd.htm"], + \["conjugate", "f_conjug.htm"], + \["cons", "a_cons.htm"], + \["consp", "f_consp.htm"], + \["constantly", "f_cons_1.htm"], + \["constantp", "f_consta.htm"], + \["continue", "a_contin.htm"], + \["control-error", "e_contro.htm"], + \["copy-alist", "f_cp_ali.htm"], + \["copy-list", "f_cp_lis.htm"], + \["copy-pprint-dispatch", "f_cp_ppr.htm"], + \["copy-readtable", "f_cp_rdt.htm"], + \["copy-seq", "f_cp_seq.htm"], + \["copy-structure", "f_cp_stu.htm"], + \["copy-symbol", "f_cp_sym.htm"], + \["copy-tree", "f_cp_tre.htm"], + \["cos", "f_sin_c.htm"], + \["cosh", "f_sinh_.htm"], + \["count", "f_countc.htm"], + \["count-if", "f_countc.htm"], + \["count-if-not", "f_countc.htm"], + \["ctypecase", "m_tpcase.htm"], + \["debug", "d_optimi.htm"], + \["decf", "m_incf_.htm"], + \["declaim", "m_declai.htm"], + \["declaration", "d_declar.htm"], + \["declare", "s_declar.htm"], + \["decode-float", "f_dec_fl.htm"], + \["decode-universal-time", "f_dec_un.htm"], + \["defclass", "m_defcla.htm"], + \["defconstant", "m_defcon.htm"], + \["defgeneric", "m_defgen.htm"], + \["define-compiler-macro", "m_define.htm"], + \["define-condition", "m_defi_5.htm"], + \["define-method-combination", "m_defi_4.htm"], + \["define-modify-macro", "m_defi_2.htm"], + \["define-setf-expander", "m_defi_3.htm"], + \["define-symbol-macro", "m_defi_1.htm"], + \["defmacro", "m_defmac.htm"], + \["defmethod", "m_defmet.htm"], + \["defpackage", "m_defpkg.htm"], + \["defparameter", "m_defpar.htm"], + \["defsetf", "m_defset.htm"], + \["defstruct", "m_defstr.htm"], + \["deftype", "m_deftp.htm"], + \["defun", "m_defun.htm"], + \["defvar", "m_defpar.htm"], + \["delete", "f_rm_rm.htm"], + \["delete-duplicates", "f_rm_dup.htm"], + \["delete-file", "f_del_fi.htm"], + \["delete-if", "f_rm_rm.htm"], + \["delete-if-not", "f_rm_rm.htm"], + \["delete-package", "f_del_pk.htm"], + \["denominator", "f_numera.htm"], + \["deposit-field", "f_deposi.htm"], + \["describe", "f_descri.htm"], + \["describe-object", "f_desc_1.htm"], + \["destructuring-bind", "m_destru.htm"], + \["digit-char", "f_digit_.htm"], + \["digit-char-p", "f_digi_1.htm"], + \["directory", "f_dir.htm"], + \["directory-namestring", "f_namest.htm"], + \["disassemble", "f_disass.htm"], + \["division-by-zero", "e_divisi.htm"], + \["do", "m_do_do.htm"], + \["do*", "m_do_do.htm"], + \["do-all-symbols", "m_do_sym.htm"], + \["do-external-symbols", "m_do_sym.htm"], + \["do-symbols", "m_do_sym.htm"], + \["documentation", "f_docume.htm"], + \["dolist", "m_dolist.htm"], + \["dotimes", "m_dotime.htm"], + \["double-float", "t_short_.htm"], + \["double-float-epsilon", "v_short_.htm"], + \["double-float-negative-epsilon", "v_short_.htm"], + \["dpb", "f_dpb.htm"], + \["dribble", "f_dribbl.htm"], + \["dynamic-extent", "d_dynami.htm"], + \["ecase", "m_case_.htm"], + \["echo-stream", "t_echo_s.htm"], + \["echo-stream-input-stream", "f_echo_s.htm"], + \["echo-stream-output-stream", "f_echo_s.htm"], + \["ed", "f_ed.htm"], + \["eighth", "f_firstc.htm"], + \["elt", "f_elt.htm"], + \["encode-universal-time", "f_encode.htm"], + \["end-of-file", "e_end_of.htm"], + \["endp", "f_endp.htm"], + \["enough-namestring", "f_namest.htm"], + \["ensure-directories-exist", "f_ensu_1.htm"], + \["ensure-generic-function", "f_ensure.htm"], + \["eq", "f_eq.htm"], + \["eql", "a_eql.htm"], + \["equal", "f_equal.htm"], + \["equalp", "f_equalp.htm"], + \["error", "a_error.htm"], + \["etypecase", "m_tpcase.htm"], + \["eval", "f_eval.htm"], + \["eval-when", "s_eval_w.htm"], + \["evenp", "f_evenpc.htm"], + \["every", "f_everyc.htm"], + \["exp", "f_exp_e.htm"], + \["export", "f_export.htm"], + \["expt", "f_exp_e.htm"], + \["extended-char", "t_extend.htm"], + \["fboundp", "f_fbound.htm"], + \["fceiling", "f_floorc.htm"], + \["fdefinition", "f_fdefin.htm"], + \["ffloor", "f_floorc.htm"], + \["fifth", "f_firstc.htm"], + \["file-author", "f_file_a.htm"], + \["file-error", "e_file_e.htm"], + \["file-error-pathname", "f_file_e.htm"], + \["file-length", "f_file_l.htm"], + \["file-namestring", "f_namest.htm"], + \["file-position", "f_file_p.htm"], + \["file-stream", "t_file_s.htm"], + \["file-string-length", "f_file_s.htm"], + \["file-write-date", "f_file_w.htm"], + \["fill", "f_fill.htm"], + \["fill-pointer", "f_fill_p.htm"], + \["find", "f_find_.htm"], + \["find-all-symbols", "f_find_a.htm"], + \["find-class", "f_find_c.htm"], + \["find-if", "f_find_.htm"], + \["find-if-not", "f_find_.htm"], + \["find-method", "f_find_m.htm"], + \["find-package", "f_find_p.htm"], + \["find-restart", "f_find_r.htm"], + \["find-symbol", "f_find_s.htm"], + \["finish-output", "f_finish.htm"], + \["first", "f_firstc.htm"], + \["fixnum", "t_fixnum.htm"], + \["flet", "s_flet_.htm"], + \["float", "a_float.htm"], + \["float-digits", "f_dec_fl.htm"], + \["float-precision", "f_dec_fl.htm"], + \["float-radix", "f_dec_fl.htm"], + \["float-sign", "f_dec_fl.htm"], + \["floating-point-inexact", "e_floa_1.htm"], + \["floating-point-invalid-operation", "e_floati.htm"], + \["floating-point-overflow", "e_floa_2.htm"], + \["floating-point-underflow", "e_floa_3.htm"], + \["floatp", "f_floatp.htm"], + \["floor", "f_floorc.htm"], + \["fmakunbound", "f_fmakun.htm"], + \["force-output", "f_finish.htm"], + \["format", "f_format.htm"], + \["formatter", "m_format.htm"], + \["fourth", "f_firstc.htm"], + \["fresh-line", "f_terpri.htm"], + \["fround", "f_floorc.htm"], + \["ftruncate", "f_floorc.htm"], + \["ftype", "d_ftype.htm"], + \["funcall", "f_funcal.htm"], + \["function", "a_fn.htm"], + \["function-keywords", "f_fn_kwd.htm"], + \["function-lambda-expression", "f_fn_lam.htm"], + \["functionp", "f_fnp.htm"], + \["gcd", "f_gcd.htm"], + \["generic-function", "t_generi.htm"], + \["gensym", "f_gensym.htm"], + \["gentemp", "f_gentem.htm"], + \["get", "f_get.htm"], + \["get-decoded-time", "f_get_un.htm"], + \["get-dispatch-macro-character", "f_set__1.htm"], + \["get-internal-real-time", "f_get_in.htm"], + \["get-internal-run-time", "f_get__1.htm"], + \["get-macro-character", "f_set_ma.htm"], + \["get-output-stream-string", "f_get_ou.htm"], + \["get-properties", "f_get_pr.htm"], + \["get-setf-expansion", "f_get_se.htm"], + \["get-universal-time", "f_get_un.htm"], + \["getf", "f_getf.htm"], + \["gethash", "f_gethas.htm"], + \["go", "s_go.htm"], + \["graphic-char-p", "f_graphi.htm"], + \["handler-bind", "m_handle.htm"], + \["handler-case", "m_hand_1.htm"], + \["hash-table", "t_hash_t.htm"], + \["hash-table-count", "f_hash_1.htm"], + \["hash-table-p", "f_hash_t.htm"], + \["hash-table-rehash-size", "f_hash_2.htm"], + \["hash-table-rehash-threshold", "f_hash_3.htm"], + \["hash-table-size", "f_hash_4.htm"], + \["hash-table-test", "f_hash_5.htm"], + \["host-namestring", "f_namest.htm"], + \["identity", "f_identi.htm"], + \["if", "s_if.htm"], + \["ignorable", "d_ignore.htm"], + \["ignore", "d_ignore.htm"], + \["ignore-errors", "m_ignore.htm"], + \["imagpart", "f_realpa.htm"], + \["import", "f_import.htm"], + \["in-package", "m_in_pkg.htm"], + \["incf", "m_incf_.htm"], + \["initialize-instance", "f_init_i.htm"], + \["inline", "d_inline.htm"], + \["input-stream-p", "f_in_stm.htm"], + \["inspect", "f_inspec.htm"], + \["integer", "t_intege.htm"], + \["integer-decode-float", "f_dec_fl.htm"], + \["integer-length", "f_intege.htm"], + \["integerp", "f_inte_1.htm"], + \["interactive-stream-p", "f_intera.htm"], + \["intern", "f_intern.htm"], + \["internal-time-units-per-second", "v_intern.htm"], + \["intersection", "f_isec_.htm"], + \["invalid-method-error", "f_invali.htm"], + \["invoke-debugger", "f_invoke.htm"], + \["invoke-restart", "f_invo_1.htm"], + \["invoke-restart-interactively", "f_invo_2.htm"], + \["isqrt", "f_sqrt_.htm"], + \["keyword", "t_kwd.htm"], + \["keywordp", "f_kwdp.htm"], + \["labels", "s_flet_.htm"], + \["lambda", "a_lambda.htm"], + \["lambda-list-keywords", "v_lambda.htm"], + \["lambda-parameters-limit", "v_lamb_1.htm"], + \["last", "f_last.htm"], + \["lcm", "f_lcm.htm"], + \["ldb", "f_ldb.htm"], + \["ldb-test", "f_ldb_te.htm"], + \["ldiff", "f_ldiffc.htm"], + \["least-negative-double-float", "v_most_1.htm"], + \["least-negative-long-float", "v_most_1.htm"], + \["least-negative-normalized-double-float", "v_most_1.htm"], + \["least-negative-normalized-long-float", "v_most_1.htm"], + \["least-negative-normalized-short-float", "v_most_1.htm"], + \["least-negative-normalized-single-float", "v_most_1.htm"], + \["least-negative-short-float", "v_most_1.htm"], + \["least-negative-single-float", "v_most_1.htm"], + \["least-positive-double-float", "v_most_1.htm"], + \["least-positive-long-float", "v_most_1.htm"], + \["least-positive-normalized-double-float", "v_most_1.htm"], + \["least-positive-normalized-long-float", "v_most_1.htm"], + \["least-positive-normalized-short-float", "v_most_1.htm"], + \["least-positive-normalized-single-float", "v_most_1.htm"], + \["least-positive-short-float", "v_most_1.htm"], + \["least-positive-single-float", "v_most_1.htm"], + \["length", "f_length.htm"], + \["let", "s_let_l.htm"], + \["let*", "s_let_l.htm"], + \["lisp-implementation-type", "f_lisp_i.htm"], + \["lisp-implementation-version", "f_lisp_i.htm"], + \["list", "a_list.htm"], + \["list*", "f_list_.htm"], + \["list-all-packages", "f_list_a.htm"], + \["list-length", "f_list_l.htm"], + \["listen", "f_listen.htm"], + \["listp", "f_listp.htm"], + \["load", "f_load.htm"], + \["load-logical-pathname-translations", "f_ld_log.htm"], + \["load-time-value", "s_ld_tim.htm"], + \["locally", "s_locall.htm"], + \["log", "f_log.htm"], + \["logand", "f_logand.htm"], + \["logandc1", "f_logand.htm"], + \["logandc2", "f_logand.htm"], + \["logbitp", "f_logbtp.htm"], + \["logcount", "f_logcou.htm"], + \["logeqv", "f_logand.htm"], + \["logical-pathname", "a_logica.htm"], + \["logical-pathname-translations", "f_logica.htm"], + \["logior", "f_logand.htm"], + \["lognand", "f_logand.htm"], + \["lognor", "f_logand.htm"], + \["lognot", "f_logand.htm"], + \["logorc1", "f_logand.htm"], + \["logorc2", "f_logand.htm"], + \["logtest", "f_logtes.htm"], + \["logxor", "f_logand.htm"], + \["long-float", "t_short_.htm"], + \["long-float-epsilon", "v_short_.htm"], + \["long-float-negative-epsilon", "v_short_.htm"], + \["long-site-name", "f_short_.htm"], + \["loop", "m_loop.htm"], + \["loop-finish", "m_loop_f.htm"], + \["lower-case-p", "f_upper_.htm"], + \["machine-instance", "f_mach_i.htm"], + \["machine-type", "f_mach_t.htm"], + \["machine-version", "f_mach_v.htm"], + \["macro-function", "f_macro_.htm"], + \["macroexpand", "f_mexp_.htm"], + \["macroexpand-1", "f_mexp_.htm"], + \["macrolet", "s_flet_.htm"], + \["make-array", "f_mk_ar.htm"], + \["make-broadcast-stream", "f_mk_bro.htm"], + \["make-concatenated-stream", "f_mk_con.htm"], + \["make-condition", "f_mk_cnd.htm"], + \["make-dispatch-macro-character", "f_mk_dis.htm"], + \["make-echo-stream", "f_mk_ech.htm"], + \["make-hash-table", "f_mk_has.htm"], + \["make-instance", "f_mk_ins.htm"], + \["make-instances-obsolete", "f_mk_i_1.htm"], + \["make-list", "f_mk_lis.htm"], + \["make-load-form", "f_mk_ld_.htm"], + \["make-load-form-saving-slots", "f_mk_l_1.htm"], + \["make-method", "m_call_m.htm"], + \["make-package", "f_mk_pkg.htm"], + \["make-pathname", "f_mk_pn.htm"], + \["make-random-state", "f_mk_rnd.htm"], + \["make-sequence", "f_mk_seq.htm"], + \["make-string", "f_mk_stg.htm"], + \["make-string-input-stream", "f_mk_s_1.htm"], + \["make-string-output-stream", "f_mk_s_2.htm"], + \["make-symbol", "f_mk_sym.htm"], + \["make-synonym-stream", "f_mk_syn.htm"], + \["make-two-way-stream", "f_mk_two.htm"], + \["makunbound", "f_makunb.htm"], + \["map", "f_map.htm"], + \["map-into", "f_map_in.htm"], + \["mapc", "f_mapc_.htm"], + \["mapcan", "f_mapc_.htm"], + \["mapcar", "f_mapc_.htm"], + \["mapcon", "f_mapc_.htm"], + \["maphash", "f_maphas.htm"], + \["mapl", "f_mapc_.htm"], + \["maplist", "f_mapc_.htm"], + \["mask-field", "f_mask_f.htm"], + \["max", "f_max_m.htm"], + \["member", "a_member.htm"], + \["member-if", "f_mem_m.htm"], + \["member-if-not", "f_mem_m.htm"], + \["merge", "f_merge.htm"], + \["merge-pathnames", "f_merge_.htm"], + \["method", "t_method.htm"], + \["method-combination", "a_method.htm"], + \["method-combination-error", "f_meth_1.htm"], + \["method-qualifiers", "f_method.htm"], + \["min", "f_max_m.htm"], + \["minusp", "f_minusp.htm"], + \["mismatch", "f_mismat.htm"], + \["mod", "a_mod.htm"], + \["most-negative-double-float", "v_most_1.htm"], + \["most-negative-fixnum", "v_most_p.htm"], + \["most-negative-long-float", "v_most_1.htm"], + \["most-negative-short-float", "v_most_1.htm"], + \["most-negative-single-float", "v_most_1.htm"], + \["most-positive-double-float", "v_most_1.htm"], + \["most-positive-fixnum", "v_most_p.htm"], + \["most-positive-long-float", "v_most_1.htm"], + \["most-positive-short-float", "v_most_1.htm"], + \["most-positive-single-float", "v_most_1.htm"], + \["muffle-warning", "a_muffle.htm"], + \["multiple-value-bind", "m_multip.htm"], + \["multiple-value-call", "s_multip.htm"], + \["multiple-value-list", "m_mult_1.htm"], + \["multiple-value-prog1", "s_mult_1.htm"], + \["multiple-value-setq", "m_mult_2.htm"], + \["multiple-values-limit", "v_multip.htm"], + \["name-char", "f_name_c.htm"], + \["namestring", "f_namest.htm"], + \["nbutlast", "f_butlas.htm"], + \["nconc", "f_nconc.htm"], + \["next-method-p", "f_next_m.htm"], + \["nil", "a_nil.htm"], + \["nintersection", "f_isec_.htm"], + \["ninth", "f_firstc.htm"], + \["no-applicable-method", "f_no_app.htm"], + \["no-next-method", "f_no_nex.htm"], + \["not", "a_not.htm"], + \["notany", "f_everyc.htm"], + \["notevery", "f_everyc.htm"], + \["notinline", "d_inline.htm"], + \["nreconc", "f_revapp.htm"], + \["nreverse", "f_revers.htm"], + \["nset-difference", "f_set_di.htm"], + \["nset-exclusive-or", "f_set_ex.htm"], + \["nstring-capitalize", "f_stg_up.htm"], + \["nstring-downcase", "f_stg_up.htm"], + \["nstring-upcase", "f_stg_up.htm"], + \["nsublis", "f_sublis.htm"], + \["nsubst", "f_substc.htm"], + \["nsubst-if", "f_substc.htm"], + \["nsubst-if-not", "f_substc.htm"], + \["nsubstitute", "f_sbs_s.htm"], + \["nsubstitute-if", "f_sbs_s.htm"], + \["nsubstitute-if-not", "f_sbs_s.htm"], + \["nth", "f_nth.htm"], + \["nth-value", "m_nth_va.htm"], + \["nthcdr", "f_nthcdr.htm"], + \["null", "a_null.htm"], + \["number", "t_number.htm"], + \["numberp", "f_nump.htm"], + \["numerator", "f_numera.htm"], + \["nunion", "f_unionc.htm"], + \["oddp", "f_evenpc.htm"], + \["open", "f_open.htm"], + \["open-stream-p", "f_open_s.htm"], + \["optimize", "d_optimi.htm"], + \["or", "a_or.htm"], + \["otherwise", "m_case_.htm"], + \["output-stream-p", "f_in_stm.htm"], + \["package", "t_pkg.htm"], + \["package-error", "e_pkg_er.htm"], + \["package-error-package", "f_pkg_er.htm"], + \["package-name", "f_pkg_na.htm"], + \["package-nicknames", "f_pkg_ni.htm"], + \["package-shadowing-symbols", "f_pkg_sh.htm"], + \["package-use-list", "f_pkg_us.htm"], + \["package-used-by-list", "f_pkg__1.htm"], + \["packagep", "f_pkgp.htm"], + \["pairlis", "f_pairli.htm"], + \["parse-error", "e_parse_.htm"], + \["parse-integer", "f_parse_.htm"], + \["parse-namestring", "f_pars_1.htm"], + \["pathname", "a_pn.htm"], + \["pathname-device", "f_pn_hos.htm"], + \["pathname-directory", "f_pn_hos.htm"], + \["pathname-host", "f_pn_hos.htm"], + \["pathname-match-p", "f_pn_mat.htm"], + \["pathname-name", "f_pn_hos.htm"], + \["pathname-type", "f_pn_hos.htm"], + \["pathname-version", "f_pn_hos.htm"], + \["pathnamep", "f_pnp.htm"], + \["peek-char", "f_peek_c.htm"], + \["phase", "f_phase.htm"], + \["pi", "v_pi.htm"], + \["plusp", "f_minusp.htm"], + \["pop", "m_pop.htm"], + \["position", "f_pos_p.htm"], + \["position-if", "f_pos_p.htm"], + \["position-if-not", "f_pos_p.htm"], + \["pprint", "f_wr_pr.htm"], + \["pprint-dispatch", "f_ppr_di.htm"], + \["pprint-exit-if-list-exhausted", "m_ppr_ex.htm"], + \["pprint-fill", "f_ppr_fi.htm"], + \["pprint-indent", "f_ppr_in.htm"], + \["pprint-linear", "f_ppr_fi.htm"], + \["pprint-logical-block", "m_ppr_lo.htm"], + \["pprint-newline", "f_ppr_nl.htm"], + \["pprint-pop", "m_ppr_po.htm"], + \["pprint-tab", "f_ppr_ta.htm"], + \["pprint-tabular", "f_ppr_fi.htm"], + \["prin1", "f_wr_pr.htm"], + \["prin1-to-string", "f_wr_to_.htm"], + \["princ", "f_wr_pr.htm"], + \["princ-to-string", "f_wr_to_.htm"], + \["print", "f_wr_pr.htm"], + \["print-not-readable", "e_pr_not.htm"], + \["print-not-readable-object", "f_pr_not.htm"], + \["print-object", "f_pr_obj.htm"], + \["print-unreadable-object", "m_pr_unr.htm"], + \["probe-file", "f_probe_.htm"], + \["proclaim", "f_procla.htm"], + \["prog", "m_prog_.htm"], + \["prog*", "m_prog_.htm"], + \["prog1", "m_prog1c.htm"], + \["prog2", "m_prog1c.htm"], + \["progn", "s_progn.htm"], + \["program-error", "e_progra.htm"], + \["progv", "s_progv.htm"], + \["provide", "f_provid.htm"], + \["psetf", "m_setf_.htm"], + \["psetq", "m_psetq.htm"], + \["push", "m_push.htm"], + \["pushnew", "m_pshnew.htm"], + \["quote", "s_quote.htm"], + \["random", "f_random.htm"], + \["random-state", "t_rnd_st.htm"], + \["random-state-p", "f_rnd_st.htm"], + \["rassoc", "f_rassoc.htm"], + \["rassoc-if", "f_rassoc.htm"], + \["rassoc-if-not", "f_rassoc.htm"], + \["ratio", "t_ratio.htm"], + \["rational", "a_ration.htm"], + \["rationalize", "f_ration.htm"], + \["rationalp", "f_rati_1.htm"], + \["read", "f_rd_rd.htm"], + \["read-byte", "f_rd_by.htm"], + \["read-char", "f_rd_cha.htm"], + \["read-char-no-hang", "f_rd_c_1.htm"], + \["read-delimited-list", "f_rd_del.htm"], + \["read-from-string", "f_rd_fro.htm"], + \["read-line", "f_rd_lin.htm"], + \["read-preserving-whitespace", "f_rd_rd.htm"], + \["read-sequence", "f_rd_seq.htm"], + \["reader-error", "e_rder_e.htm"], + \["readtable", "t_rdtabl.htm"], + \["readtable-case", "f_rdtabl.htm"], + \["readtablep", "f_rdta_1.htm"], + \["real", "t_real.htm"], + \["realp", "f_realp.htm"], + \["realpart", "f_realpa.htm"], + \["reduce", "f_reduce.htm"], + \["reinitialize-instance", "f_reinit.htm"], + \["rem", "f_mod_r.htm"], + \["remf", "m_remf.htm"], + \["remhash", "f_remhas.htm"], + \["remove", "f_rm_rm.htm"], + \["remove-duplicates", "f_rm_dup.htm"], + \["remove-if", "f_rm_rm.htm"], + \["remove-if-not", "f_rm_rm.htm"], + \["remove-method", "f_rm_met.htm"], + \["remprop", "f_rempro.htm"], + \["rename-file", "f_rn_fil.htm"], + \["rename-package", "f_rn_pkg.htm"], + \["replace", "f_replac.htm"], + \["require", "f_provid.htm"], + \["rest", "f_rest.htm"], + \["restart", "t_rst.htm"], + \["restart-bind", "m_rst_bi.htm"], + \["restart-case", "m_rst_ca.htm"], + \["restart-name", "f_rst_na.htm"], + \["return", "m_return.htm"], + \["return-from", "s_ret_fr.htm"], + \["revappend", "f_revapp.htm"], + \["reverse", "f_revers.htm"], + \["room", "f_room.htm"], + \["rotatef", "m_rotate.htm"], + \["round", "f_floorc.htm"], + \["row-major-aref", "f_row_ma.htm"], + \["rplaca", "f_rplaca.htm"], + \["rplacd", "f_rplaca.htm"], + \["safety", "d_optimi.htm"], + \["satisfies", "t_satisf.htm"], + \["sbit", "f_bt_sb.htm"], + \["scale-float", "f_dec_fl.htm"], + \["schar", "f_char_.htm"], + \["search", "f_search.htm"], + \["second", "f_firstc.htm"], + \["sequence", "t_seq.htm"], + \["serious-condition", "e_seriou.htm"], + \["set", "f_set.htm"], + \["set-difference", "f_set_di.htm"], + \["set-dispatch-macro-character", "f_set__1.htm"], + \["set-exclusive-or", "f_set_ex.htm"], + \["set-macro-character", "f_set_ma.htm"], + \["set-pprint-dispatch", "f_set_pp.htm"], + \["set-syntax-from-char", "f_set_sy.htm"], + \["setf", "a_setf.htm"], + \["setq", "s_setq.htm"], + \["seventh", "f_firstc.htm"], + \["shadow", "f_shadow.htm"], + \["shadowing-import", "f_shdw_i.htm"], + \["shared-initialize", "f_shared.htm"], + \["shiftf", "m_shiftf.htm"], + \["short-float", "t_short_.htm"], + \["short-float-epsilon", "v_short_.htm"], + \["short-float-negative-epsilon", "v_short_.htm"], + \["short-site-name", "f_short_.htm"], + \["signal", "f_signal.htm"], + \["signed-byte", "t_sgn_by.htm"], + \["signum", "f_signum.htm"], + \["simple-array", "t_smp_ar.htm"], + \["simple-base-string", "t_smp_ba.htm"], + \["simple-bit-vector", "t_smp_bt.htm"], + \["simple-bit-vector-p", "f_smp_bt.htm"], + \["simple-condition", "e_smp_cn.htm"], + \["simple-condition-format-arguments", "f_smp_cn.htm"], + \["simple-condition-format-control", "f_smp_cn.htm"], + \["simple-error", "e_smp_er.htm"], + \["simple-string", "t_smp_st.htm"], + \["simple-string-p", "f_smp_st.htm"], + \["simple-type-error", "e_smp_tp.htm"], + \["simple-vector", "t_smp_ve.htm"], + \["simple-vector-p", "f_smp_ve.htm"], + \["simple-warning", "e_smp_wa.htm"], + \["sin", "f_sin_c.htm"], + \["single-float", "t_short_.htm"], + \["single-float-epsilon", "v_short_.htm"], + \["single-float-negative-epsilon", "v_short_.htm"], + \["sinh", "f_sinh_.htm"], + \["sixth", "f_firstc.htm"], + \["sleep", "f_sleep.htm"], + \["slot-boundp", "f_slt_bo.htm"], + \["slot-exists-p", "f_slt_ex.htm"], + \["slot-makunbound", "f_slt_ma.htm"], + \["slot-missing", "f_slt_mi.htm"], + \["slot-unbound", "f_slt_un.htm"], + \["slot-value", "f_slt_va.htm"], + \["software-type", "f_sw_tpc.htm"], + \["software-version", "f_sw_tpc.htm"], + \["some", "f_everyc.htm"], + \["sort", "f_sort_.htm"], + \["space", "d_optimi.htm"], + \["special", "d_specia.htm"], + \["special-operator-p", "f_specia.htm"], + \["speed", "d_optimi.htm"], + \["sqrt", "f_sqrt_.htm"], + \["stable-sort", "f_sort_.htm"], + \["standard", "07_ffb.htm"], + \["standard-char", "t_std_ch.htm"], + \["standard-char-p", "f_std_ch.htm"], + \["standard-class", "t_std_cl.htm"], + \["standard-generic-function", "t_std_ge.htm"], + \["standard-method", "t_std_me.htm"], + \["standard-object", "t_std_ob.htm"], + \["step", "m_step.htm"], + \["storage-condition", "e_storag.htm"], + \["store-value", "a_store_.htm"], + \["stream", "t_stream.htm"], + \["stream-element-type", "f_stm_el.htm"], + \["stream-error", "e_stm_er.htm"], + \["stream-error-stream", "f_stm_er.htm"], + \["stream-external-format", "f_stm_ex.htm"], + \["streamp", "f_stmp.htm"], + \["string", "a_string.htm"], + \["string-capitalize", "f_stg_up.htm"], + \["string-downcase", "f_stg_up.htm"], + \["string-equal", "f_stgeq_.htm"], + \["string-greaterp", "f_stgeq_.htm"], + \["string-left-trim", "f_stg_tr.htm"], + \["string-lessp", "f_stgeq_.htm"], + \["string-not-equal", "f_stgeq_.htm"], + \["string-not-greaterp", "f_stgeq_.htm"], + \["string-not-lessp", "f_stgeq_.htm"], + \["string-right-trim", "f_stg_tr.htm"], + \["string-stream", "t_stg_st.htm"], + \["string-trim", "f_stg_tr.htm"], + \["string-upcase", "f_stg_up.htm"], + \["string/=", "f_stgeq_.htm"], + \["string<", "f_stgeq_.htm"], + \["string<=", "f_stgeq_.htm"], + \["string=", "f_stgeq_.htm"], + \["string>", "f_stgeq_.htm"], + \["string>=", "f_stgeq_.htm"], + \["stringp", "f_stgp.htm"], + \["structure", "f_docume.htm"], + \["structure-class", "t_stu_cl.htm"], + \["structure-object", "t_stu_ob.htm"], + \["style-warning", "e_style_.htm"], + \["sublis", "f_sublis.htm"], + \["subseq", "f_subseq.htm"], + \["subsetp", "f_subset.htm"], + \["subst", "f_substc.htm"], + \["subst-if", "f_substc.htm"], + \["subst-if-not", "f_substc.htm"], + \["substitute", "f_sbs_s.htm"], + \["substitute-if", "f_sbs_s.htm"], + \["substitute-if-not", "f_sbs_s.htm"], + \["subtypep", "f_subtpp.htm"], + \["svref", "f_svref.htm"], + \["sxhash", "f_sxhash.htm"], + \["symbol", "t_symbol.htm"], + \["symbol-function", "f_symb_1.htm"], + \["symbol-macrolet", "s_symbol.htm"], + \["symbol-name", "f_symb_2.htm"], + \["symbol-package", "f_symb_3.htm"], + \["symbol-plist", "f_symb_4.htm"], + \["symbol-value", "f_symb_5.htm"], + \["symbolp", "f_symbol.htm"], + \["synonym-stream", "t_syn_st.htm"], + \["synonym-stream-symbol", "f_syn_st.htm"], + \["t", "a_t.htm"], + \["tagbody", "s_tagbod.htm"], + \["tailp", "f_ldiffc.htm"], + \["tan", "f_sin_c.htm"], + \["tanh", "f_sinh_.htm"], + \["tenth", "f_firstc.htm"], + \["terpri", "f_terpri.htm"], + \["the", "s_the.htm"], + \["third", "f_firstc.htm"], + \["throw", "s_throw.htm"], + \["time", "m_time.htm"], + \["trace", "m_tracec.htm"], + \["translate-logical-pathname", "f_tr_log.htm"], + \["translate-pathname", "f_tr_pn.htm"], + \["tree-equal", "f_tree_e.htm"], + \["truename", "f_tn.htm"], + \["truncate", "f_floorc.htm"], + \["two-way-stream", "t_two_wa.htm"], + \["two-way-stream-input-stream", "f_two_wa.htm"], + \["two-way-stream-output-stream", "f_two_wa.htm"], + \["type", "a_type.htm"], + \["type-error", "e_tp_err.htm"], + \["type-error-datum", "f_tp_err.htm"], + \["type-error-expected-type", "f_tp_err.htm"], + \["type-of", "f_tp_of.htm"], + \["typecase", "m_tpcase.htm"], + \["typep", "f_typep.htm"], + \["unbound-slot", "e_unboun.htm"], + \["unbound-slot-instance", "f_unboun.htm"], + \["unbound-variable", "e_unbo_1.htm"], + \["undefined-function", "e_undefi.htm"], + \["unexport", "f_unexpo.htm"], + \["unintern", "f_uninte.htm"], + \["union", "f_unionc.htm"], + \["unless", "m_when_.htm"], + \["unread-char", "f_unrd_c.htm"], + \["unsigned-byte", "t_unsgn_.htm"], + \["untrace", "m_tracec.htm"], + \["unuse-package", "f_unuse_.htm"], + \["unwind-protect", "s_unwind.htm"], + \["update-instance-for-different-class", "f_update.htm"], + \["update-instance-for-redefined-class", "f_upda_1.htm"], + \["upgraded-array-element-type", "f_upgr_1.htm"], + \["upgraded-complex-part-type", "f_upgrad.htm"], + \["upper-case-p", "f_upper_.htm"], + \["use-package", "f_use_pk.htm"], + \["use-value", "a_use_va.htm"], + \["user-homedir-pathname", "f_user_h.htm"], + \["values", "a_values.htm"], + \["values-list", "f_vals_l.htm"], + \["variable", "f_docume.htm"], + \["vector", "a_vector.htm"], + \["vector-pop", "f_vec_po.htm"], + \["vector-push", "f_vec_ps.htm"], + \["vector-push-extend", "f_vec_ps.htm"], + \["vectorp", "f_vecp.htm"], + \["warn", "f_warn.htm"], + \["warning", "e_warnin.htm"], + \["when", "m_when_.htm"], + \["wild-pathname-p", "f_wild_p.htm"], + \["with-accessors", "m_w_acce.htm"], + \["with-compilation-unit", "m_w_comp.htm"], + \["with-condition-restarts", "m_w_cnd_.htm"], + \["with-hash-table-iterator", "m_w_hash.htm"], + \["with-input-from-string", "m_w_in_f.htm"], + \["with-open-file", "m_w_open.htm"], + \["with-open-stream", "m_w_op_1.htm"], + \["with-output-to-string", "m_w_out_.htm"], + \["with-package-iterator", "m_w_pkg_.htm"], + \["with-simple-restart", "m_w_smp_.htm"], + \["with-slots", "m_w_slts.htm"], + \["with-standard-io-syntax", "m_w_std_.htm"], + \["write", "f_wr_pr.htm"], + \["write-byte", "f_wr_by.htm"], + \["write-char", "f_wr_cha.htm"], + \["write-line", "f_wr_stg.htm"], + \["write-sequence", "f_wr_seq.htm"], + \["write-string", "f_wr_stg.htm"], + \["write-to-string", "f_wr_to_.htm"], + \["y-or-n-p", "f_y_or_n.htm"], + \["yes-or-no-p", "f_y_or_n.htm"], + \["zerop", "f_zerop.htm"]] +endif + +if !exists( 'g:slimv_clhs_issues' ) + let g:slimv_clhs_issues = [ + \["&environment-binding-order:first", "iss001.htm"], + \["access-error-name", "iss002.htm"], + \["adjust-array-displacement", "iss003.htm"], + \["adjust-array-fill-pointer", "iss004.htm"], + \["adjust-array-not-adjustable:implicit-copy", "iss005.htm"], + \["allocate-instance:add", "iss006.htm"], + \["allow-local-inline:inline-notinline", "iss007.htm"], + \["allow-other-keys-nil:permit", "iss008.htm"], + \["aref-1d", "iss009.htm"], + \["argument-mismatch-error-again:consistent", "iss010.htm"], + \["argument-mismatch-error-moon:fix", "iss011.htm"], + \["argument-mismatch-error:more-clarifications", "iss012.htm"], + \["arguments-underspecified:specify", "iss013.htm"], + \["array-dimension-limit-implications:all-fixnum", "iss014.htm"], + \["array-type-element-type-semantics:unify-upgrading", "iss015.htm"], + \["assert-error-type:error", "iss016.htm"], + \["assoc-rassoc-if-key", "iss017.htm"], + \["assoc-rassoc-if-key:yes", "iss018.htm"], + \["boa-aux-initialization:error-on-read", "iss019.htm"], + \["break-on-warnings-obsolete:remove", "iss020.htm"], + \["broadcast-stream-return-values:clarify-minimally", "iss021.htm"], + \["butlast-negative:should-signal", "iss022.htm"], + \["change-class-initargs:permit", "iss023.htm"], + \["char-name-case:x3j13-mar-91", "iss024.htm"], + \["character-loose-ends:fix", "iss025.htm"], + \["character-proposal:2", "iss026.htm"], + \["character-proposal:2-1-1", "iss027.htm"], + \["character-proposal:2-1-2", "iss028.htm"], + \["character-proposal:2-2-1", "iss029.htm"], + \["character-proposal:2-3-1", "iss030.htm"], + \["character-proposal:2-3-2", "iss031.htm"], + \["character-proposal:2-3-3", "iss032.htm"], + \["character-proposal:2-3-4", "iss033.htm"], + \["character-proposal:2-3-5", "iss034.htm"], + \["character-proposal:2-3-6", "iss035.htm"], + \["character-proposal:2-4-1", "iss036.htm"], + \["character-proposal:2-4-2", "iss037.htm"], + \["character-proposal:2-4-3", "iss038.htm"], + \["character-proposal:2-5-2", "iss039.htm"], + \["character-proposal:2-5-6", "iss040.htm"], + \["character-proposal:2-5-7", "iss041.htm"], + \["character-proposal:2-6-1", "iss042.htm"], + \["character-proposal:2-6-2", "iss043.htm"], + \["character-proposal:2-6-3", "iss044.htm"], + \["character-proposal:2-6-5", "iss045.htm"], + \["character-vs-char:less-inconsistent-short", "iss046.htm"], + \["class-object-specializer:affirm", "iss047.htm"], + \["clos-conditions-again:allow-subset", "iss048.htm"], + \["clos-conditions:integrate", "iss049.htm"], + \["clos-error-checking-order:no-applicable-method-first", "iss050.htm"], + \["clos-macro-compilation:minimal", "iss051.htm"], + \["close-constructed-stream:argument-stream-only", "iss052.htm"], + \["closed-stream-operations:allow-inquiry", "iss053.htm"], + \["coercing-setf-name-to-function:all-function-names", "iss054.htm"], + \["colon-number", "iss055.htm"], + \["common-features:specify", "iss056.htm"], + \["common-type:remove", "iss057.htm"], + \["compile-argument-problems-again:fix", "iss058.htm"], + \["compile-file-handling-of-top-level-forms:clarify", "iss059.htm"], + \["compile-file-output-file-defaults:input-file", "iss060.htm"], + \["compile-file-package", "iss061.htm"], + \["compile-file-pathname-arguments:make-consistent", "iss062.htm"], + \["compile-file-symbol-handling:new-require-consistency", "iss063.htm"], + \["compiled-function-requirements:tighten", "iss064.htm"], + \["compiler-diagnostics:use-handler", "iss065.htm"], + \["compiler-let-confusion:eliminate", "iss066.htm"], + \["compiler-verbosity:like-load", "iss067.htm"], + \["compiler-warning-stream", "iss068.htm"], + \["complex-atan-branch-cut:tweak", "iss069.htm"], + \["complex-atanh-bogus-formula:tweak-more", "iss070.htm"], + \["complex-rational-result:extend", "iss071.htm"], + \["compute-applicable-methods:generic", "iss072.htm"], + \["concatenate-sequence:signal-error", "iss073.htm"], + \["condition-accessors-setfable:no", "iss074.htm"], + \["condition-restarts:buggy", "iss075.htm"], + \["condition-restarts:permit-association", "iss076.htm"], + \["condition-slots:hidden", "iss077.htm"], + \["cons-type-specifier:add", "iss078.htm"], + \["constant-circular-compilation:yes", "iss079.htm"], + \["constant-collapsing:generalize", "iss080.htm"], + \["constant-compilable-types:specify", "iss081.htm"], + \["constant-function-compilation:no", "iss082.htm"], + \["constant-modification:disallow", "iss083.htm"], + \["constantp-definition:intentional", "iss084.htm"], + \["constantp-environment:add-arg", "iss085.htm"], + \["contagion-on-numerical-comparisons:transitive", "iss086.htm"], + \["copy-symbol-copy-plist:copy-list", "iss087.htm"], + \["copy-symbol-print-name:equal", "iss088.htm"], + \["data-io:add-support", "iss089.htm"], + \["data-types-hierarchy-underspecified", "iss090.htm"], + \["debugger-hook-vs-break:clarify", "iss091.htm"], + \["declaration-scope:no-hoisting", "iss092.htm"], + \["declare-array-type-element-references:restrictive", "iss093.htm"], + \["declare-function-ambiguity:delete-ftype-abbreviation", "iss094.htm"], + \["declare-macros:flush", "iss095.htm"], + \["declare-type-free:lexical", "iss096.htm"], + \["decls-and-doc", "iss097.htm"], + \["decode-universal-time-daylight:like-encode", "iss098.htm"], + \["defconstant-special:no", "iss099.htm"], + \["defgeneric-declare:allow-multiple", "iss100.htm"], + \["define-compiler-macro:x3j13-nov89", "iss101.htm"], + \["define-condition-syntax:incompatibly-more-like-defclass+emphasize-read-only", "iss102.htm"], + \["define-method-combination-behavior:clarify", "iss103.htm"], + \["defining-macros-non-top-level:allow", "iss104.htm"], + \["defmacro-block-scope:excludes-bindings", "iss105.htm"], + \["defmacro-lambda-list:tighten-description", "iss106.htm"], + \["defmethod-declaration-scope:corresponds-to-bindings", "iss107.htm"], + \["defpackage:addition", "iss108.htm"], + \["defstruct-constructor-key-mixture:allow-key", "iss109.htm"], + \["defstruct-constructor-options:explicit", "iss110.htm"], + \["defstruct-constructor-slot-variables:not-bound", "iss111.htm"], + \["defstruct-copier-argument-type:restrict", "iss112.htm"], + \["defstruct-copier:argument-type", "iss113.htm"], + \["defstruct-default-value-evaluation:iff-needed", "iss114.htm"], + \["defstruct-include-deftype:explicitly-undefined", "iss115.htm"], + \["defstruct-print-function-again:x3j13-mar-93", "iss116.htm"], + \["defstruct-print-function-inheritance:yes", "iss117.htm"], + \["defstruct-redefinition:error", "iss118.htm"], + \["defstruct-slots-constraints-name:duplicates-error", "iss119.htm"], + \["defstruct-slots-constraints-number", "iss120.htm"], + \["deftype-destructuring:yes", "iss121.htm"], + \["deftype-key:allow", "iss122.htm"], + \["defvar-documentation:unevaluated", "iss123.htm"], + \["defvar-init-time:not-delayed", "iss124.htm"], + \["defvar-initialization:conservative", "iss125.htm"], + \["deprecation-position:limited", "iss126.htm"], + \["describe-interactive:no", "iss127.htm"], + \["describe-underspecified:describe-object", "iss128.htm"], + \["destructive-operations:specify", "iss129.htm"], + \["destructuring-bind:new-macro", "iss130.htm"], + \["disassemble-side-effect:do-not-install", "iss131.htm"], + \["displaced-array-predicate:add", "iss132.htm"], + \["do-symbols-block-scope:entire-form", "iss133.htm"], + \["do-symbols-duplicates", "iss134.htm"], + \["documentation-function-bugs:fix", "iss135.htm"], + \["documentation-function-tangled:require-argument", "iss136.htm"], + \["dotimes-ignore:x3j13-mar91", "iss137.htm"], + \["dotted-list-arguments:clarify", "iss138.htm"], + \["dotted-macro-forms:allow", "iss139.htm"], + \["dribble-technique", "iss140.htm"], + \["dynamic-extent-function:extend", "iss141.htm"], + \["dynamic-extent:new-declaration", "iss142.htm"], + \["equal-structure:maybe-status-quo", "iss143.htm"], + \["error-terminology-warning:might", "iss144.htm"], + \["eval-other:self-evaluate", "iss145.htm"], + \["eval-top-level:load-like-compile-file", "iss146.htm"], + \["eval-when-non-top-level:generalize-eval-new-keywords", "iss147.htm"], + \["eval-when-obsolete-keywords:x3j13-mar-1993", "iss148.htm"], + \["evalhook-step-confusion:fix", "iss149.htm"], + \["evalhook-step-confusion:x3j13-nov-89", "iss150.htm"], + \["exit-extent-and-condition-system:like-dynamic-bindings", "iss151.htm"], + \["exit-extent:minimal", "iss152.htm"], + \["expt-ratio:p.211", "iss153.htm"], + \["extensions-position:documentation", "iss154.htm"], + \["external-format-for-every-file-connection:minimum", "iss155.htm"], + \["extra-return-values:no", "iss156.htm"], + \["file-open-error:signal-file-error", "iss157.htm"], + \["fixnum-non-portable:tighten-definition", "iss158.htm"], + \["flet-declarations", "iss159.htm"], + \["flet-declarations:allow", "iss160.htm"], + \["flet-implicit-block:yes", "iss161.htm"], + \["float-underflow:add-variables", "iss162.htm"], + \["floating-point-condition-names:x3j13-nov-89", "iss163.htm"], + \["format-atsign-colon", "iss164.htm"], + \["format-colon-uparrow-scope", "iss165.htm"], + \["format-comma-interval", "iss166.htm"], + \["format-e-exponent-sign:force-sign", "iss167.htm"], + \["format-op-c", "iss168.htm"], + \["format-pretty-print:yes", "iss169.htm"], + \["format-string-arguments:specify", "iss170.htm"], + \["function-call-evaluation-order:more-unspecified", "iss171.htm"], + \["function-composition:jan89-x3j13", "iss172.htm"], + \["function-definition:jan89-x3j13", "iss173.htm"], + \["function-name:large", "iss174.htm"], + \["function-type", "iss175.htm"], + \["function-type-argument-type-semantics:restrictive", "iss176.htm"], + \["function-type-key-name:specify-keyword", "iss177.htm"], + \["function-type-rest-list-element:use-actual-argument-type", "iss178.htm"], + \["function-type:x3j13-march-88", "iss179.htm"], + \["generalize-pretty-printer:unify", "iss180.htm"], + \["generic-flet-poorly-designed:delete", "iss181.htm"], + \["gensym-name-stickiness:like-teflon", "iss182.htm"], + \["gentemp-bad-idea:deprecate", "iss183.htm"], + \["get-macro-character-readtable:nil-standard", "iss184.htm"], + \["get-setf-method-environment:add-arg", "iss185.htm"], + \["hash-table-access:x3j13-mar-89", "iss186.htm"], + \["hash-table-key-modification:specify", "iss187.htm"], + \["hash-table-package-generators:add-with-wrapper", "iss188.htm"], + \["hash-table-rehash-size-integer", "iss189.htm"], + \["hash-table-size:intended-entries", "iss190.htm"], + \["hash-table-tests:add-equalp", "iss191.htm"], + \["ieee-atan-branch-cut:split", "iss192.htm"], + \["ignore-use-terminology:value-only", "iss193.htm"], + \["import-setf-symbol-package", "iss194.htm"], + \["in-package-functionality:mar89-x3j13", "iss195.htm"], + \["in-syntax:minimal", "iss196.htm"], + \["initialization-function-keyword-checking", "iss197.htm"], + \["iso-compatibility:add-substrate", "iss198.htm"], + \["jun90-trivial-issues:11", "iss199.htm"], + \["jun90-trivial-issues:14", "iss200.htm"], + \["jun90-trivial-issues:24", "iss201.htm"], + \["jun90-trivial-issues:25", "iss202.htm"], + \["jun90-trivial-issues:27", "iss203.htm"], + \["jun90-trivial-issues:3", "iss204.htm"], + \["jun90-trivial-issues:4", "iss205.htm"], + \["jun90-trivial-issues:5", "iss206.htm"], + \["jun90-trivial-issues:9", "iss207.htm"], + \["keyword-argument-name-package:any", "iss208.htm"], + \["last-n", "iss209.htm"], + \["lcm-no-arguments:1", "iss210.htm"], + \["lexical-construct-global-definition:undefined", "iss211.htm"], + \["lisp-package-name:common-lisp", "iss212.htm"], + \["lisp-symbol-redefinition-again:more-fixes", "iss213.htm"], + \["lisp-symbol-redefinition:mar89-x3j13", "iss214.htm"], + \["load-objects:make-load-form", "iss215.htm"], + \["load-time-eval:r**2-new-special-form", "iss216.htm"], + \["load-time-eval:r**3-new-special-form", "iss217.htm"], + \["load-truename:new-pathname-variables", "iss218.htm"], + \["locally-top-level:special-form", "iss219.htm"], + \["loop-and-discrepancy:no-reiteration", "iss220.htm"], + \["loop-for-as-on-typo:fix-typo", "iss221.htm"], + \["loop-initform-environment:partial-interleaving-vague", "iss222.htm"], + \["loop-miscellaneous-repairs:fix", "iss223.htm"], + \["loop-named-block-nil:override", "iss224.htm"], + \["loop-present-symbols-typo:flush-wrong-words", "iss225.htm"], + \["loop-syntax-overhaul:repair", "iss226.htm"], + \["macro-as-function:disallow", "iss227.htm"], + \["macro-declarations:make-explicit", "iss228.htm"], + \["macro-environment-extent:dynamic", "iss229.htm"], + \["macro-function-environment", "iss230.htm"], + \["macro-function-environment:yes", "iss231.htm"], + \["macro-subforms-top-level-p:add-constraints", "iss232.htm"], + \["macroexpand-hook-default:explicitly-vague", "iss233.htm"], + \["macroexpand-hook-initial-value:implementation-dependent", "iss234.htm"], + \["macroexpand-return-value:true", "iss235.htm"], + \["make-load-form-confusion:rewrite", "iss236.htm"], + \["make-load-form-saving-slots:no-initforms", "iss237.htm"], + \["make-package-use-default:implementation-dependent", "iss238.htm"], + \["map-into:add-function", "iss239.htm"], + \["mapping-destructive-interaction:explicitly-vague", "iss240.htm"], + \["metaclass-of-system-class:unspecified", "iss241.htm"], + \["method-combination-arguments:clarify", "iss242.htm"], + \["method-initform:forbid-call-next-method", "iss243.htm"], + \["muffle-warning-condition-argument", "iss244.htm"], + \["multiple-value-setq-order:like-setf-of-values", "iss245.htm"], + \["multiple-values-limit-on-variables:undefined", "iss246.htm"], + \["nintersection-destruction", "iss247.htm"], + \["nintersection-destruction:revert", "iss248.htm"], + \["not-and-null-return-value:x3j13-mar-93", "iss249.htm"], + \["nth-value:add", "iss250.htm"], + \["optimize-debug-info:new-quality", "iss251.htm"], + \["package-clutter:reduce", "iss252.htm"], + \["package-deletion:new-function", "iss253.htm"], + \["package-function-consistency:more-permissive", "iss254.htm"], + \["parse-error-stream:split-types", "iss255.htm"], + \["pathname-component-case:keyword-argument", "iss256.htm"], + \["pathname-component-value:specify", "iss257.htm"], + \["pathname-host-parsing:recognize-logical-host-names", "iss258.htm"], + \["pathname-logical:add", "iss259.htm"], + \["pathname-print-read:sharpsign-p", "iss260.htm"], + \["pathname-stream", "iss261.htm"], + \["pathname-stream:files-or-synonym", "iss262.htm"], + \["pathname-subdirectory-list:new-representation", "iss263.htm"], + \["pathname-symbol", "iss264.htm"], + \["pathname-syntax-error-time:explicitly-vague", "iss265.htm"], + \["pathname-unspecific-component:new-token", "iss266.htm"], + \["pathname-wild:new-functions", "iss267.htm"], + \["peek-char-read-char-echo:first-read-char", "iss268.htm"], + \["plist-duplicates:allow", "iss269.htm"], + \["pretty-print-interface", "iss270.htm"], + \["princ-readably:x3j13-dec-91", "iss271.htm"], + \["print-case-behavior:clarify", "iss272.htm"], + \["print-case-print-escape-interaction:vertical-bar-rule-no-upcase", "iss273.htm"], + \["print-circle-shared:respect-print-circle", "iss274.htm"], + \["print-circle-structure:user-functions-work", "iss275.htm"], + \["print-readably-behavior:clarify", "iss276.htm"], + \["printer-whitespace:just-one-space", "iss277.htm"], + \["proclaim-etc-in-compile-file:new-macro", "iss278.htm"], + \["push-evaluation-order:first-item", "iss279.htm"], + \["push-evaluation-order:item-first", "iss280.htm"], + \["pushnew-store-required:unspecified", "iss281.htm"], + \["quote-semantics:no-copying", "iss282.htm"], + \["range-of-count-keyword:nil-or-integer", "iss283.htm"], + \["range-of-start-and-end-parameters:integer-and-integer-nil", "iss284.htm"], + \["read-and-write-bytes:new-functions", "iss285.htm"], + \["read-case-sensitivity:readtable-keywords", "iss286.htm"], + \["read-modify-write-evaluation-order:delayed-access-stores", "iss287.htm"], + \["read-suppress-confusing:generalize", "iss288.htm"], + \["reader-error:new-type", "iss289.htm"], + \["real-number-type:x3j13-mar-89", "iss290.htm"], + \["recursive-deftype:explicitly-vague", "iss291.htm"], + \["reduce-argument-extraction", "iss292.htm"], + \["remf-destruction-unspecified:x3j13-mar-89", "iss293.htm"], + \["require-pathname-defaults-again:x3j13-dec-91", "iss294.htm"], + \["require-pathname-defaults-yet-again:restore-argument", "iss295.htm"], + \["require-pathname-defaults:eliminate", "iss296.htm"], + \["rest-list-allocation:may-share", "iss297.htm"], + \["result-lists-shared:specify", "iss298.htm"], + \["return-values-unspecified:specify", "iss299.htm"], + \["room-default-argument:new-value", "iss300.htm"], + \["self-modifying-code:forbid", "iss301.htm"], + \["sequence-type-length:must-match", "iss302.htm"], + \["setf-apply-expansion:ignore-expander", "iss303.htm"], + \["setf-find-class:allow-nil", "iss304.htm"], + \["setf-functions-again:minimal-changes", "iss305.htm"], + \["setf-get-default:evaluated-but-ignored", "iss306.htm"], + \["setf-macro-expansion:last", "iss307.htm"], + \["setf-method-vs-setf-method:rename-old-terms", "iss308.htm"], + \["setf-multiple-store-variables:allow", "iss309.htm"], + \["setf-of-apply:only-aref-and-friends", "iss310.htm"], + \["setf-of-values:add", "iss311.htm"], + \["setf-sub-methods:delayed-access-stores", "iss312.htm"], + \["shadow-already-present", "iss313.htm"], + \["shadow-already-present:works", "iss314.htm"], + \["sharp-comma-confusion:remove", "iss315.htm"], + \["sharp-o-foobar:consequences-undefined", "iss316.htm"], + \["sharp-star-delimiter:normal-delimiter", "iss317.htm"], + \["sharpsign-plus-minus-package:keyword", "iss318.htm"], + \["slot-missing-values:specify", "iss319.htm"], + \["slot-value-metaclasses:less-minimal", "iss320.htm"], + \["special-form-p-misnomer:rename", "iss321.htm"], + \["special-type-shadowing:clarify", "iss322.htm"], + \["standard-input-initial-binding:defined-contracts", "iss323.htm"], + \["standard-repertoire-gratuitous:rename", "iss324.htm"], + \["step-environment:current", "iss325.htm"], + \["step-minimal:permit-progn", "iss326.htm"], + \["stream-access:add-types-accessors", "iss327.htm"], + \["stream-capabilities:interactive-stream-p", "iss328.htm"], + \["string-coercion:make-consistent", "iss329.htm"], + \["string-output-stream-bashing:undefined", "iss330.htm"], + \["structure-read-print-syntax:keywords", "iss331.htm"], + \["subseq-out-of-bounds", "iss332.htm"], + \["subseq-out-of-bounds:is-an-error", "iss333.htm"], + \["subsetting-position:none", "iss334.htm"], + \["subtypep-environment:add-arg", "iss335.htm"], + \["subtypep-too-vague:clarify-more", "iss336.htm"], + \["sxhash-definition:similar-for-sxhash", "iss337.htm"], + \["symbol-macrolet-declare:allow", "iss338.htm"], + \["symbol-macrolet-semantics:special-form", "iss339.htm"], + \["symbol-macrolet-type-declaration:no", "iss340.htm"], + \["symbol-macros-and-proclaimed-specials:signals-an-error", "iss341.htm"], + \["symbol-print-escape-behavior:clarify", "iss342.htm"], + \["syntactic-environment-access:retracted-mar91", "iss343.htm"], + \["tagbody-tag-expansion:no", "iss344.htm"], + \["tailp-nil:t", "iss345.htm"], + \["test-not-if-not:flush-all", "iss346.htm"], + \["the-ambiguity:for-declaration", "iss347.htm"], + \["the-values:return-number-received", "iss348.htm"], + \["time-zone-non-integer:allow", "iss349.htm"], + \["type-declaration-abbreviation:allow-all", "iss350.htm"], + \["type-of-and-predefined-classes:type-of-handles-floats", "iss351.htm"], + \["type-of-and-predefined-classes:unify-and-extend", "iss352.htm"], + \["type-of-underconstrained:add-constraints", "iss353.htm"], + \["type-specifier-abbreviation:x3j13-jun90-guess", "iss354.htm"], + \["undefined-variables-and-functions:compromise", "iss355.htm"], + \["uninitialized-elements:consequences-undefined", "iss356.htm"], + \["unread-char-after-peek-char:dont-allow", "iss357.htm"], + \["unsolicited-messages:not-to-system-user-streams", "iss358.htm"], + \["variable-list-asymmetry:symmetrize", "iss359.htm"], + \["with-added-methods:delete", "iss360.htm"], + \["with-compilation-unit:new-macro", "iss361.htm"], + \["with-open-file-does-not-exist:stream-is-nil", "iss362.htm"], + \["with-open-file-setq:explicitly-vague", "iss363.htm"], + \["with-open-file-stream-extent:dynamic-extent", "iss364.htm"], + \["with-output-to-string-append-style:vector-push-extend", "iss365.htm"], + \["with-standard-io-syntax-readtable:x3j13-mar-91", "iss366.htm"]] +endif + +if !exists( 'g:slimv_clhs_chapters' ) + let g:slimv_clhs_chapters = [ + \["[index]", "../Front/Contents.htm"], + \["[introduction]", "01_.htm"], + \["[syntax]", "02_.htm"], + \["[evaluation and compilation]", "03_.htm"], + \["[types and classes]", "04_.htm"], + \["[data and control flow]", "05_.htm"], + \["[iteration]", "06_.htm"], + \["[objects]", "07_.htm"], + \["[structures]", "08_.htm"], + \["[conditions]", "09_.htm"], + \["[symbols]", "10_.htm"], + \["[packages]", "11_.htm"], + \["[numbers]", "12_.htm"], + \["[characters]", "13_.htm"], + \["[conses]", "14_.htm"], + \["[arrays]", "15_.htm"], + \["[strings]", "16_.htm"], + \["[sequences]", "17_.htm"], + \["[hash tables]", "18_.htm"], + \["[filenames]", "19_.htm"], + \["[files]", "20_.htm"], + \["[streams]", "21_.htm"], + \["[printer]", "22_.htm"], + \["[reader]", "23_.htm"], + \["[system construction]", "24_.htm"], + \["[environment]", "25_.htm"], + \["[glossary]", "26_.htm"]] +endif + +if !exists( 'g:slimv_clhs_control_chars' ) + let g:slimv_clhs_control_chars = [ + \["~C: Character", "22_caa.htm"], + \["~%: Newline", "22_cab.htm"], + \["~&: Freshline", "22_cac.htm"], + \["~|: Page", "22_cad.htm"], + \["~~: Tilde", "22_cae.htm"], + \["~R: Radix", "22_cba.htm"], + \["~D: Decimal", "22_cbb.htm"], + \["~B: Binary", "22_cbc.htm"], + \["~O: Octal", "22_cbd.htm"], + \["~X: Hexadecimal", "22_cbe.htm"], + \["~F: Fixed-Format Floating-Point", "22_cca.htm"], + \["~E: Exponential Floating-Point", "22_ccb.htm"], + \["~G: General Floating-Point", "22_ccc.htm"], + \["~$: Monetary Floating-Point", "22_ccd.htm"], + \["~A: Aesthetic", "22_cda.htm"], + \["~S: Standard", "22_cdb.htm"], + \["~W: Write", "22_cdc.htm"], + \["~_: Conditional Newline", "22_cea.htm"], + \["~<: Logical Block", "22_ceb.htm"], + \["~I: Indent", "22_cec.htm"], + \["~/: Call Function", "22_ced.htm"], + \["~T: Tabulate", "22_cfa.htm"], + \["~<: Justification", "22_cfb.htm"], + \["~>: End of Justification", "22_cfc.htm"], + \["~*: Go-To", "22_cga.htm"], + \["~[: Conditional Expression", "22_cgb.htm"], + \["~]: End of Conditional Expression", "22_cgc.htm"], + \["~{: Iteration", "22_cgd.htm"], + \["~}: End of Iteration", "22_cge.htm"], + \["~?: Recursive Processing", "22_cgf.htm"], + \["~(: Case Conversion", "22_cha.htm"], + \["~): End of Case Conversion", "22_chb.htm"], + \["~P: Plural", "22_chc.htm"], + \["~;: Clause Separator", "22_cia.htm"], + \["~^: Escape Upward", "22_cib.htm"], + \["~NEWLINE: Ignored Newline", "22_cic.htm"]] +endif + +if !exists( 'g:slimv_clhs_macro_chars' ) + let g:slimv_clhs_macro_chars = [ + \["(", "02_da.htm"], + \[")", "02_db.htm"], + \["'", "02_dc.htm"], + \[";", "02_dd.htm"], + \['"', "02_de.htm"], + \["`", "02_df.htm"], + \[",", "02_dg.htm"], + \["#", "02_dh.htm"], + \["#\\", "02_dha.htm"], + \["#'", "02_dhb.htm"], + \["#(", "02_dhc.htm"], + \["#*", "02_dhd.htm"], + \["#:", "02_dhe.htm"], + \["#.", "02_dhf.htm"], + \["#b", "02_dhg.htm"], + \["#o", "02_dhh.htm"], + \["#x", "02_dhi.htm"], + \["#r", "02_dhj.htm"], + \["#c", "02_dhk.htm"], + \["#a", "02_dhl.htm"], + \["#s", "02_dhm.htm"], + \["#p", "02_dhn.htm"], + \["#=", "02_dho.htm"], + \["##", "02_dhp.htm"], + \["#+", "02_dhq.htm"], + \["#-", "02_dhr.htm"], + \["#|", "02_dhs.htm"], + \["#<", "02_dht.htm"]] +endif + +if !exists( 'g:slimv_clhs_loop' ) + let g:slimv_clhs_loop = [ + \["loop:with", "06_abb.htm"], + \["loop:for-as", "06_aba.htm"], + \["loop:for-as-arithmetic", "06_abaa.htm"], + \["loop:for-as-in-list", "06_abab.htm"], + \["loop:for-as-on-list", "06_abac.htm"], + \["loop:for-as-equals-then", "06_abad.htm"], + \["loop:for-as-across", "06_abae.htm"], + \["loop:for-as-hash", "06_abaf.htm"], + \["loop:for-as-package", "06_abag.htm"], + \["loop:collect", "06_ac.htm"], + \["loop:append", "06_ac.htm"], + \["loop:nconc", "06_ac.htm"], + \["loop:count", "06_ac.htm"], + \["loop:maximize", "06_ac.htm"], + \["loop:minimize", "06_ac.htm"], + \["loop:sum", "06_ac.htm"], + \["loop:repeat", "06_ad.htm"], + \["loop:always", "06_ad.htm"], + \["loop:never", "06_ad.htm"], + \["loop:thereis", "06_ad.htm"], + \["loop:while", "06_ad.htm"], + \["loop:until", "06_ad.htm"], + \["loop:do", "06_ae.htm"], + \["loop:return", "06_ae.htm"], + \["loop:if", "06_af.htm"], + \["loop:when", "06_af.htm"], + \["loop:unless", "06_af.htm"], + \["loop:else", "06_af.htm"], + \["loop:it", "06_af.htm"], + \["loop:end", "06_af.htm"], + \["loop:named", "06_aga.htm"], + \["loop:initially", "06_agb.htm"], + \["loop:finally", "06_agb.htm"]] +endif + +if !exists( 'g:slimv_clhs_arguments' ) + let g:slimv_clhs_arguments = [ + \[":test", "17_ba.htm"], + \[":test-not", "17_ba.htm"], + \[":key", "17_bb.htm"], + \[":eof-error-p", "23_aca.htm"], + \[":recursive-p", "23_acb.htm"], + \[":case", "19_bbab.htm"], + \["&allow-other-keys", "03_dada.htm"], + \[":allow-other-keys", "03_dada.htm"]] +endif + +if !exists( 'g:slimv_clhs_glossary' ) + let g:slimv_clhs_glossary = [ + \["{()}", "26_glo_9.htm\\#OPCP"], + \["{absolute}", "26_glo_a.htm\\#absolute"], + \["{access}", "26_glo_a.htm\\#access"], + \["{accessibility}", "26_glo_a.htm\\#accessibility"], + \["{accessible}", "26_glo_a.htm\\#accessible"], + \["{accessor}", "26_glo_a.htm\\#accessor"], + \["{active}", "26_glo_a.htm\\#active"], + \["{actual adjustability}", "26_glo_a.htm\\#actual_adjustability"], + \["{actual argument}", "26_glo_a.htm\\#actual_argument"], + \["{actual array element type}", "26_glo_a.htm\\#actual_array_element_type"], + \["{actual complex part type}", "26_glo_a.htm\\#actual_complex_part_type"], + \["{actual parameter}", "26_glo_a.htm\\#actual_parameter"], + \["{actually adjustable}", "26_glo_a.htm\\#actually_adjustable"], + \["{adjustability}", "26_glo_a.htm\\#adjustability"], + \["{adjustable}", "26_glo_a.htm\\#adjustable"], + \["{after method}", "26_glo_a.htm\\#after_method"], + \["{alist}", "26_glo_a.htm\\#alist"], + \["{alphabetic}", "26_glo_a.htm\\#alphabetic"], + \["{alphanumeric}", "26_glo_a.htm\\#alphanumeric"], + \["{ampersand}", "26_glo_a.htm\\#ampersand"], + \["{anonymous}", "26_glo_a.htm\\#anonymous"], + \["{apparently uninterned}", "26_glo_a.htm\\#apparently_uninterned"], + \["{applicable}", "26_glo_a.htm\\#applicable"], + \["{applicable handler}", "26_glo_a.htm\\#applicable_handler"], + \["{applicable method}", "26_glo_a.htm\\#applicable_method"], + \["{applicable restart}", "26_glo_a.htm\\#applicable_restart"], + \["{apply}", "26_glo_a.htm\\#apply"], + \["{argument}", "26_glo_a.htm\\#argument"], + \["{argument evaluation order}", "26_glo_a.htm\\#argument_evaluation_order"], + \["{argument precedence order}", "26_glo_a.htm\\#argument_precedence_order"], + \["{around method}", "26_glo_a.htm\\#around_method"], + \["{array}", "26_glo_a.htm\\#array"], + \["{array element type}", "26_glo_a.htm\\#array_element_type"], + \["{array total size}", "26_glo_a.htm\\#array_total_size"], + \["{assign}", "26_glo_a.htm\\#assign"], + \["{association list}", "26_glo_a.htm\\#association_list"], + \["{asterisk}", "26_glo_a.htm\\#asterisk"], + \["{at-sign}", "26_glo_a.htm\\#at-sign"], + \["{atom}", "26_glo_a.htm\\#atom"], + \["{atomic}", "26_glo_a.htm\\#atomic"], + \["{atomic type specifier}", "26_glo_a.htm\\#atomic_type_specifier"], + \["{attribute}", "26_glo_a.htm\\#attribute"], + \["{aux variable}", "26_glo_a.htm\\#aux_variable"], + \["{auxiliary method}", "26_glo_a.htm\\#auxiliary_method"], + \["{backquote}", "26_glo_b.htm\\#backquote"], + \["{backslash}", "26_glo_b.htm\\#backslash"], + \["{base character}", "26_glo_b.htm\\#base_character"], + \["{base string}", "26_glo_b.htm\\#base_string"], + \["{before method}", "26_glo_b.htm\\#before_method"], + \["{bidirectional}", "26_glo_b.htm\\#bidirectional"], + \["{binary}", "26_glo_b.htm\\#binary"], + \["{bind}", "26_glo_b.htm\\#bind"], + \["{binding}", "26_glo_b.htm\\#binding"], + \["{bit}", "26_glo_b.htm\\#bit"], + \["{bit array}", "26_glo_b.htm\\#bit_array"], + \["{bit vector}", "26_glo_b.htm\\#bit_vector"], + \["{bit-wise logical operation specifier}", "26_glo_b.htm\\#bit-wise_logical_operation_specifier"], + \["{block}", "26_glo_b.htm\\#block"], + \["{block tag}", "26_glo_b.htm\\#block_tag"], + \["{boa lambda list}", "26_glo_b.htm\\#boa_lambda_list"], + \["{body parameter}", "26_glo_b.htm\\#body_parameter"], + \["{boolean}", "26_glo_b.htm\\#boolean"], + \["{boolean equivalent}", "26_glo_b.htm\\#boolean_equivalent"], + \["{bound}", "26_glo_b.htm\\#bound"], + \["{bound declaration}", "26_glo_b.htm\\#bound_declaration"], + \["{bounded}", "26_glo_b.htm\\#bounded"], + \["{bounding index}", "26_glo_b.htm\\#bounding_index"], + \["{bounding index designator}", "26_glo_b.htm\\#bounding_index_designator"], + \["{break loop}", "26_glo_b.htm\\#break_loop"], + \["{broadcast stream}", "26_glo_b.htm\\#broadcast_stream"], + \["{built-in class}", "26_glo_b.htm\\#built-in_class"], + \["{built-in type}", "26_glo_b.htm\\#built-in_type"], + \["{byte}", "26_glo_b.htm\\#byte"], + \["{byte specifier}", "26_glo_b.htm\\#byte_specifier"], + \["{cadr}", "26_glo_c.htm\\#cadr"], + \["{call}", "26_glo_c.htm\\#call"], + \["{captured initialization form}", "26_glo_c.htm\\#captured_initialization_form"], + \["{car}", "26_glo_c.htm\\#car"], + \["{case}", "26_glo_c.htm\\#case"], + \["{case sensitivity mode}", "26_glo_c.htm\\#case_sensitivity_mode"], + \["{catch}", "26_glo_c.htm\\#catch"], + \["{catch tag}", "26_glo_c.htm\\#catch_tag"], + \["{cddr}", "26_glo_c.htm\\#cddr"], + \["{cdr}", "26_glo_c.htm\\#cdr"], + \["{cell}", "26_glo_c.htm\\#cell"], + \["{character}", "26_glo_c.htm\\#character"], + \["{character code}", "26_glo_c.htm\\#character_code"], + \["{character designator}", "26_glo_c.htm\\#character_designator"], + \["{circular}", "26_glo_c.htm\\#circular"], + \["{circular list}", "26_glo_c.htm\\#circular_list"], + \["{class}", "26_glo_c.htm\\#class"], + \["{class designator}", "26_glo_c.htm\\#class_designator"], + \["{class precedence list}", "26_glo_c.htm\\#class_precedence_list"], + \["{close}", "26_glo_c.htm\\#close"], + \["{closed}", "26_glo_c.htm\\#closed"], + \["{closure}", "26_glo_c.htm\\#closure"], + \["{coalesce}", "26_glo_c.htm\\#coalesce"], + \["{code}", "26_glo_c.htm\\#code"], + \["{coerce}", "26_glo_c.htm\\#coerce"], + \["{colon}", "26_glo_c.htm\\#colon"], + \["{comma}", "26_glo_c.htm\\#comma"], + \["{compilation}", "26_glo_c.htm\\#compilation"], + \["{compilation environment}", "26_glo_c.htm\\#compilation_environment"], + \["{compilation unit}", "26_glo_c.htm\\#compilation_unit"], + \["{compile}", "26_glo_c.htm\\#compile"], + \["{compile time}", "26_glo_c.htm\\#compile_time"], + \["{compile time definition}", "26_glo_c.htm\\#compile-time_definition"], + \["{compiled code}", "26_glo_c.htm\\#compiled_code"], + \["{compiled file}", "26_glo_c.htm\\#compiled_file"], + \["{compiled function}", "26_glo_c.htm\\#compiled_function"], + \["{compiler}", "26_glo_c.htm\\#compiler"], + \["{compiler macro}", "26_glo_c.htm\\#compiler_macro"], + \["{compiler macro expansion}", "26_glo_c.htm\\#compiler_macro_expansion"], + \["{compiler macro form}", "26_glo_c.htm\\#compiler_macro_form"], + \["{compiler macro function}", "26_glo_c.htm\\#compiler_macro_function"], + \["{complex}", "26_glo_c.htm\\#complex"], + \["{complex float}", "26_glo_c.htm\\#complex_float"], + \["{complex part type}", "26_glo_c.htm\\#complex_part_type"], + \["{complex rational}", "26_glo_c.htm\\#complex_rational"], + \["{complex single float}", "26_glo_c.htm\\#complex_single_float"], + \["{composite stream}", "26_glo_c.htm\\#composite_stream"], + \["{compound form}", "26_glo_c.htm\\#compound_form"], + \["{compound type specifier}", "26_glo_c.htm\\#compound_type_specifier"], + \["{concatenated stream}", "26_glo_c.htm\\#concatenated_stream"], + \["{condition}", "26_glo_c.htm\\#condition"], + \["{condition designator}", "26_glo_c.htm\\#condition_designator"], + \["{condition handler}", "26_glo_c.htm\\#condition_handler"], + \["{condition reporter}", "26_glo_c.htm\\#condition_reporter"], + \["{conditional newline}", "26_glo_c.htm\\#conditional_newline"], + \["{conformance}", "26_glo_c.htm\\#conformance"], + \["{conforming code}", "26_glo_c.htm\\#conforming_code"], + \["{conforming implementation}", "26_glo_c.htm\\#conforming_implementation"], + \["{conforming processor}", "26_glo_c.htm\\#conforming_processor"], + \["{conforming program}", "26_glo_c.htm\\#conforming_program"], + \["{congruent}", "26_glo_c.htm\\#congruent"], + \["{cons}", "26_glo_c.htm\\#cons"], + \["{constant}", "26_glo_c.htm\\#constant"], + \["{constant form}", "26_glo_c.htm\\#constant_form"], + \["{constant object}", "26_glo_c.htm\\#constant_object"], + \["{constant variable}", "26_glo_c.htm\\#constant_variable"], + \["{constituent}", "26_glo_c.htm\\#constituent"], + \["{constituent trait}", "26_glo_c.htm\\#constituent_trait"], + \["{constructed stream}", "26_glo_c.htm\\#constructed_stream"], + \["{contagion}", "26_glo_c.htm\\#contagion"], + \["{continuable}", "26_glo_c.htm\\#continuable"], + \["{control form}", "26_glo_c.htm\\#control_form"], + \["{copy}", "26_glo_c.htm\\#copy"], + \["{correctable}", "26_glo_c.htm\\#correctable"], + \["{current input base}", "26_glo_c.htm\\#current_input_base"], + \["{current logical block}", "26_glo_c.htm\\#current_logical_block"], + \["{current output base}", "26_glo_c.htm\\#current_output_base"], + \["{current package}", "26_glo_c.htm\\#current_package"], + \["{current pprint dispatch table}", "26_glo_c.htm\\#current_pprint_dispatch_table"], + \["{current random state}", "26_glo_c.htm\\#current_random_state"], + \["{current readtable}", "26_glo_c.htm\\#current_readtable"], + \["{data type}", "26_glo_d.htm\\#data_type"], + \["{debug I/O}", "26_glo_d.htm\\#debug_iSLo"], + \["{debugger}", "26_glo_d.htm\\#debugger"], + \["{declaration}", "26_glo_d.htm\\#declaration"], + \["{declaration identifier}", "26_glo_d.htm\\#declaration_identifier"], + \["{declaration specifier}", "26_glo_d.htm\\#declaration_specifier"], + \["{declare}", "26_glo_d.htm\\#declare"], + \["{decline}", "26_glo_d.htm\\#decline"], + \["{decoded time}", "26_glo_d.htm\\#decoded_time"], + \["{default method}", "26_glo_d.htm\\#default_method"], + \["{defaulted initialization argument list}", "26_glo_d.htm\\#defaulted_initialization_argument_list"], + \["{define-method-combination arguments lambda list}", "26_glo_d.htm\\#define-method-combination_arguments_lambda_list"], + \["{define-modify-macro lambda list}", "26_glo_d.htm\\#define-modify-macro_lambda_list"], + \["{defined name}", "26_glo_d.htm\\#defined_name"], + \["{defining form}", "26_glo_d.htm\\#defining_form"], + \["{defsetf lambda list}", "26_glo_d.htm\\#defsetf_lambda_list"], + \["{deftype lambda list}", "26_glo_d.htm\\#deftype_lambda_list"], + \["{denormalized}", "26_glo_d.htm\\#denormalized"], + \["{derived type}", "26_glo_d.htm\\#derived_type"], + \["{derived type specifier}", "26_glo_d.htm\\#derived_type_specifier"], + \["{designator}", "26_glo_d.htm\\#designator"], + \["{destructive}", "26_glo_d.htm\\#destructive"], + \["{destructuring lambda list}", "26_glo_d.htm\\#destructuring_lambda_list"], + \["{different}", "26_glo_d.htm\\#different"], + \["{digit}", "26_glo_d.htm\\#digit"], + \["{dimension}", "26_glo_d.htm\\#dimension"], + \["{direct instance}", "26_glo_d.htm\\#direct_instance"], + \["{direct subclass}", "26_glo_d.htm\\#direct_subclass"], + \["{direct superclass}", "26_glo_d.htm\\#direct_superclass"], + \["{disestablish}", "26_glo_d.htm\\#disestablish"], + \["{disjoint}", "26_glo_d.htm\\#disjoint"], + \["{dispatching macro character}", "26_glo_d.htm\\#dispatching_macro_character"], + \["{displaced array}", "26_glo_d.htm\\#displaced_array"], + \["{distinct}", "26_glo_d.htm\\#distinct"], + \["{documentation string}", "26_glo_d.htm\\#documentation_string"], + \["{dot}", "26_glo_d.htm\\#dot"], + \["{dotted list}", "26_glo_d.htm\\#dotted_list"], + \["{dotted pair}", "26_glo_d.htm\\#dotted_pair"], + \["{double float}", "26_glo_d.htm\\#double_float"], + \["{double-quote}", "26_glo_d.htm\\#double-quote"], + \["{dynamic binding}", "26_glo_d.htm\\#dynamic_binding"], + \["{dynamic environment}", "26_glo_d.htm\\#dynamic_environment"], + \["{dynamic extent}", "26_glo_d.htm\\#dynamic_extent"], + \["{dynamic scope}", "26_glo_d.htm\\#dynamic_scope"], + \["{dynamic variable}", "26_glo_d.htm\\#dynamic_variable"], + \["{echo stream}", "26_glo_e.htm\\#echo_stream"], + \["{effective method}", "26_glo_e.htm\\#effective_method"], + \["{element}", "26_glo_e.htm\\#element"], + \["{element type}", "26_glo_e.htm\\#element_type"], + \["{em}", "26_glo_e.htm\\#em"], + \["{empty list}", "26_glo_e.htm\\#empty_list"], + \["{empty type}", "26_glo_e.htm\\#empty_type"], + \["{end of file}", "26_glo_e.htm\\#end_of_file"], + \["{environment}", "26_glo_e.htm\\#environment"], + \["{environment object}", "26_glo_e.htm\\#environment_object"], + \["{environment parameter}", "26_glo_e.htm\\#environment_parameter"], + \["{error}", "26_glo_e.htm\\#error"], + \["{error output}", "26_glo_e.htm\\#error_output"], + \["{escape}", "26_glo_e.htm\\#escape"], + \["{establish}", "26_glo_e.htm\\#establish"], + \["{evaluate}", "26_glo_e.htm\\#evaluate"], + \["{evaluation}", "26_glo_e.htm\\#evaluation"], + \["{evaluation environment}", "26_glo_e.htm\\#evaluation_environment"], + \["{execute}", "26_glo_e.htm\\#execute"], + \["{execution time}", "26_glo_e.htm\\#execution_time"], + \["{exhaustive partition}", "26_glo_e.htm\\#exhaustive_partition"], + \["{exhaustive union}", "26_glo_e.htm\\#exhaustive_union"], + \["{exit point}", "26_glo_e.htm\\#exit_point"], + \["{explicit return}", "26_glo_e.htm\\#explicit_return"], + \["{explicit use}", "26_glo_e.htm\\#explicit_use"], + \["{exponent marker}", "26_glo_e.htm\\#exponent_marker"], + \["{export}", "26_glo_e.htm\\#export"], + \["{exported}", "26_glo_e.htm\\#exported"], + \["{expressed adjustability}", "26_glo_e.htm\\#expressed_adjustability"], + \["{expressed array element type}", "26_glo_e.htm\\#expressed_array_element_type"], + \["{expressed complex part type}", "26_glo_e.htm\\#expressed_complex_part_type"], + \["{expression}", "26_glo_e.htm\\#expression"], + \["{expressly adjustable}", "26_glo_e.htm\\#expressly_adjustable"], + \["{extended character}", "26_glo_e.htm\\#extended_character"], + \["{extended function designator}", "26_glo_e.htm\\#extended_function_designator"], + \["{extended lambda list}", "26_glo_e.htm\\#extended_lambda_list"], + \["{extension}", "26_glo_e.htm\\#extension"], + \["{extent}", "26_glo_e.htm\\#extent"], + \["{external file format}", "26_glo_e.htm\\#external_file_format"], + \["{external file format designator}", "26_glo_e.htm\\#external_file_format_designator"], + \["{external symbol}", "26_glo_e.htm\\#external_symbol"], + \["{externalizable object}", "26_glo_e.htm\\#externalizable_object"], + \["{false}", "26_glo_f.htm\\#false"], + \["{fbound}", "26_glo_f.htm\\#fbound"], + \["{feature}", "26_glo_f.htm\\#feature"], + \["{feature expression}", "26_glo_f.htm\\#feature_expression"], + \["{features list}", "26_glo_f.htm\\#features_list"], + \["{file}", "26_glo_f.htm\\#file"], + \["{file compiler}", "26_glo_f.htm\\#file_compiler"], + \["{file position}", "26_glo_f.htm\\#file_position"], + \["{file position designator}", "26_glo_f.htm\\#file_position_designator"], + \["{file stream}", "26_glo_f.htm\\#file_stream"], + \["{file system}", "26_glo_f.htm\\#file_system"], + \["{filename}", "26_glo_f.htm\\#filename"], + \["{fill pointer}", "26_glo_f.htm\\#fill_pointer"], + \["{finite}", "26_glo_f.htm\\#finite"], + \["{fixnum}", "26_glo_f.htm\\#fixnum"], + \["{float}", "26_glo_f.htm\\#float"], + \["{for-value}", "26_glo_f.htm\\#for-value"], + \["{form}", "26_glo_f.htm\\#form"], + \["{formal argument}", "26_glo_f.htm\\#formal_argument"], + \["{formal parameter}", "26_glo_f.htm\\#formal_parameter"], + \["{format}", "26_glo_f.htm\\#format"], + \["{format argument}", "26_glo_f.htm\\#format_argument"], + \["{format control}", "26_glo_f.htm\\#format_control"], + \["{format directive}", "26_glo_f.htm\\#format_directive"], + \["{format string}", "26_glo_f.htm\\#format_string"], + \["{free declaration}", "26_glo_f.htm\\#free_declaration"], + \["{fresh}", "26_glo_f.htm\\#fresh"], + \["{freshline}", "26_glo_f.htm\\#freshline"], + \["{funbound}", "26_glo_f.htm\\#funbound"], + \["{function}", "26_glo_f.htm\\#function"], + \["{function block name}", "26_glo_f.htm\\#function_block_name"], + \["{function cell}", "26_glo_f.htm\\#function_cell"], + \["{function designator}", "26_glo_f.htm\\#function_designator"], + \["{function form}", "26_glo_f.htm\\#function_form"], + \["{function name}", "26_glo_f.htm\\#function_name"], + \["{functional evaluation}", "26_glo_f.htm\\#functional_evaluation"], + \["{functional value}", "26_glo_f.htm\\#functional_value"], + \["{further compilation}", "26_glo_f.htm\\#further_compilation"], + \["{general}", "26_glo_g.htm\\#general"], + \["{generalized boolean}", "26_glo_g.htm\\#generalized_boolean"], + \["{generalized instance}", "26_glo_g.htm\\#generalized_instance"], + \["{generalized reference}", "26_glo_g.htm\\#generalized_reference"], + \["{generalized synonym stream}", "26_glo_g.htm\\#generalized_synonym_stream"], + \["{generic function}", "26_glo_g.htm\\#generic_function"], + \["{generic function lambda list}", "26_glo_g.htm\\#generic_function_lambda_list"], + \["{gensym}", "26_glo_g.htm\\#gensym"], + \["{global declaration}", "26_glo_g.htm\\#global_declaration"], + \["{global environment}", "26_glo_g.htm\\#global_environment"], + \["{global variable}", "26_glo_g.htm\\#global_variable"], + \["{glyph}", "26_glo_g.htm\\#glyph"], + \["{go}", "26_glo_g.htm\\#go"], + \["{go point}", "26_glo_g.htm\\#go_point"], + \["{go tag}", "26_glo_g.htm\\#go_tag"], + \["{graphic}", "26_glo_g.htm\\#graphic"], + \["{handle}", "26_glo_h.htm\\#handle"], + \["{handler}", "26_glo_h.htm\\#handler"], + \["{hash table}", "26_glo_h.htm\\#hash_table"], + \["{home package}", "26_glo_h.htm\\#home_package"], + \["{I/O customization variable}", "26_glo_i.htm\\#iSLo_customization_variable"], + \["{identical}", "26_glo_i.htm\\#identical"], + \["{identifier}", "26_glo_i.htm\\#identifier"], + \["{immutable}", "26_glo_i.htm\\#immutable"], + \["{implementation}", "26_glo_i.htm\\#implementation"], + \["{implementation limit}", "26_glo_i.htm\\#implementation_limit"], + \["{implementation-defined}", "26_glo_i.htm\\#implementation-defined"], + \["{implementation-dependent}", "26_glo_i.htm\\#implementation-dependent"], + \["{implementation-independent}", "26_glo_i.htm\\#implementation-independent"], + \["{implicit block}", "26_glo_i.htm\\#implicit_block"], + \["{implicit compilation}", "26_glo_i.htm\\#implicit_compilation"], + \["{implicit progn}", "26_glo_i.htm\\#implicit_progn"], + \["{implicit tagbody}", "26_glo_i.htm\\#implicit_tagbody"], + \["{import}", "26_glo_i.htm\\#import"], + \["{improper list}", "26_glo_i.htm\\#improper_list"], + \["{inaccessible}", "26_glo_i.htm\\#inaccessible"], + \["{indefinite extent}", "26_glo_i.htm\\#indefinite_extent"], + \["{indefinite scope}", "26_glo_i.htm\\#indefinite_scope"], + \["{indicator}", "26_glo_i.htm\\#indicator"], + \["{indirect instance}", "26_glo_i.htm\\#indirect_instance"], + \["{inherit}", "26_glo_i.htm\\#inherit"], + \["{initial pprint dispatch table}", "26_glo_i.htm\\#initial_pprint_dispatch_table"], + \["{initial readtable}", "26_glo_i.htm\\#initial_readtable"], + \["{initialization argument list}", "26_glo_i.htm\\#initialization_argument_list"], + \["{initialization form}", "26_glo_i.htm\\#initialization_form"], + \["{input}", "26_glo_i.htm\\#input"], + \["{instance}", "26_glo_i.htm\\#instance"], + \["{integer}", "26_glo_i.htm\\#integer"], + \["{interactive stream}", "26_glo_i.htm\\#interactive_stream"], + \["{intern}", "26_glo_i.htm\\#intern"], + \["{internal symbol}", "26_glo_i.htm\\#internal_symbol"], + \["{internal time}", "26_glo_i.htm\\#internal_time"], + \["{internal time unit}", "26_glo_i.htm\\#internal_time_unit"], + \["{interned}", "26_glo_i.htm\\#interned"], + \["{interpreted function}", "26_glo_i.htm\\#interpreted_function"], + \["{interpreted implementation}", "26_glo_i.htm\\#interpreted_implementation"], + \["{interval designator}", "26_glo_i.htm\\#interval_designator"], + \["{invalid}", "26_glo_i.htm\\#invalid"], + \["{iteration form}", "26_glo_i.htm\\#iteration_form"], + \["{iteration variable}", "26_glo_i.htm\\#iteration_variable"], + \["{key}", "26_glo_k.htm\\#key"], + \["{keyword}", "26_glo_k.htm\\#keyword"], + \["{keyword parameter}", "26_glo_k.htm\\#keyword_parameter"], + \["{keyword/value pair}", "26_glo_k.htm\\#keywordSLvalue_pair"], + \["{lambda combination}", "26_glo_l.htm\\#lambda_combination"], + \["{lambda expression}", "26_glo_l.htm\\#lambda_expression"], + \["{lambda form}", "26_glo_l.htm\\#lambda_form"], + \["{lambda list}", "26_glo_l.htm\\#lambda_list"], + \["{lambda list keyword}", "26_glo_l.htm\\#lambda_list_keyword"], + \["{lambda variable}", "26_glo_l.htm\\#lambda_variable"], + \["{leaf}", "26_glo_l.htm\\#leaf"], + \["{leap seconds}", "26_glo_l.htm\\#leap_seconds"], + \["{left-parenthesis}", "26_glo_l.htm\\#left-parenthesis"], + \["{length}", "26_glo_l.htm\\#length"], + \["{lexical binding}", "26_glo_l.htm\\#lexical_binding"], + \["{lexical closure}", "26_glo_l.htm\\#lexical_closure"], + \["{lexical environment}", "26_glo_l.htm\\#lexical_environment"], + \["{lexical scope}", "26_glo_l.htm\\#lexical_scope"], + \["{lexical variable}", "26_glo_l.htm\\#lexical_variable"], + \["{lisp image}", "26_glo_l.htm\\#lisp_image"], + \["{lisp printer}", "26_glo_l.htm\\#lisp_printer"], + \["{lisp read-eval-print loop}", "26_glo_l.htm\\#lisp_read-eval-print_loop"], + \["{lisp reader}", "26_glo_l.htm\\#lisp_reader"], + \["{list}", "26_glo_l.htm\\#list"], + \["{list designator}", "26_glo_l.htm\\#list_designator"], + \["{list structure}", "26_glo_l.htm\\#list_structure"], + \["{literal}", "26_glo_l.htm\\#literal"], + \["{load}", "26_glo_l.htm\\#load"], + \["{load time}", "26_glo_l.htm\\#load_time"], + \["{load time value}", "26_glo_l.htm\\#load_time_value"], + \["{loader}", "26_glo_l.htm\\#loader"], + \["{local declaration}", "26_glo_l.htm\\#local_declaration"], + \["{local precedence order}", "26_glo_l.htm\\#local_precedence_order"], + \["{local slot}", "26_glo_l.htm\\#local_slot"], + \["{logical block}", "26_glo_l.htm\\#logical_block"], + \["{logical host}", "26_glo_l.htm\\#logical_host"], + \["{logical host designator}", "26_glo_l.htm\\#logical_host_designator"], + \["{logical pathname}", "26_glo_l.htm\\#logical_pathname"], + \["{long float}", "26_glo_l.htm\\#long_float"], + \["{loop keyword}", "26_glo_l.htm\\#loop_keyword"], + \["{lowercase}", "26_glo_l.htm\\#lowercase"], + \["{macro}", "26_glo_m.htm\\#macro"], + \["{macro character}", "26_glo_m.htm\\#macro_character"], + \["{macro expansion}", "26_glo_m.htm\\#macro_expansion"], + \["{macro form}", "26_glo_m.htm\\#macro_form"], + \["{macro function}", "26_glo_m.htm\\#macro_function"], + \["{macro lambda list}", "26_glo_m.htm\\#macro_lambda_list"], + \["{macro name}", "26_glo_m.htm\\#macro_name"], + \["{macroexpand hook}", "26_glo_m.htm\\#macroexpand_hook"], + \["{mapping}", "26_glo_m.htm\\#mapping"], + \["{metaclass}", "26_glo_m.htm\\#metaclass"], + \["{metaobject protocol}", "26_glo_m.htm\\#metaobject_protocol"], + \["{method}", "26_glo_m.htm\\#method"], + \["{method combination}", "26_glo_m.htm\\#method_combination"], + \["{method-defining form}", "26_glo_m.htm\\#method-defining_form"], + \["{method-defining operator}", "26_glo_m.htm\\#method-defining_operator"], + \["{minimal compilation}", "26_glo_m.htm\\#minimal_compilation"], + \["{modified lambda list}", "26_glo_m.htm\\#modified_lambda_list"], + \["{most recent}", "26_glo_m.htm\\#most_recent"], + \["{multiple escape}", "26_glo_m.htm\\#multiple_escape"], + \["{multiple values}", "26_glo_m.htm\\#multiple_values"], + \["{name}", "26_glo_n.htm\\#name"], + \["{named constant}", "26_glo_n.htm\\#named_constant"], + \["{namespace}", "26_glo_n.htm\\#namespace"], + \["{namestring}", "26_glo_n.htm\\#namestring"], + \["{newline}", "26_glo_n.htm\\#newline"], + \["{next method}", "26_glo_n.htm\\#next_method"], + \["{nickname}", "26_glo_n.htm\\#nickname"], + \["{nil}", "26_glo_n.htm\\#nil"], + \["{non-atomic}", "26_glo_n.htm\\#non-atomic"], + \["{non-constant variable}", "26_glo_n.htm\\#non-constant_variable"], + \["{non-correctable}", "26_glo_n.htm\\#non-correctable"], + \["{non-empty}", "26_glo_n.htm\\#non-empty"], + \["{non-generic function}", "26_glo_n.htm\\#non-generic_function"], + \["{non-graphic}", "26_glo_n.htm\\#non-graphic"], + \["{non-list}", "26_glo_n.htm\\#non-list"], + \["{non-local exit}", "26_glo_n.htm\\#non-local_exit"], + \["{non-nil}", "26_glo_n.htm\\#non-nil"], + \["{non-null lexical environment}", "26_glo_n.htm\\#non-null_lexical_environment"], + \["{non-simple}", "26_glo_n.htm\\#non-simple"], + \["{non-terminating}", "26_glo_n.htm\\#non-terminating"], + \["{non-top-level form}", "26_glo_n.htm\\#non-top-level_form"], + \["{normal return}", "26_glo_n.htm\\#normal_return"], + \["{normalized}", "26_glo_n.htm\\#normalized"], + \["{null}", "26_glo_n.htm\\#null"], + \["{null lexical environment}", "26_glo_n.htm\\#null_lexical_environment"], + \["{number}", "26_glo_n.htm\\#number"], + \["{numeric}", "26_glo_n.htm\\#numeric"], + \["{object}", "26_glo_o.htm\\#object"], + \["{object-traversing}", "26_glo_o.htm\\#object-traversing"], + \["{open}", "26_glo_o.htm\\#open"], + \["{operator}", "26_glo_o.htm\\#operator"], + \["{optimize quality}", "26_glo_o.htm\\#optimize_quality"], + \["{optional parameter}", "26_glo_o.htm\\#optional_parameter"], + \["{ordinary function}", "26_glo_o.htm\\#ordinary_function"], + \["{ordinary lambda list}", "26_glo_o.htm\\#ordinary_lambda_list"], + \["{otherwise inaccessible part}", "26_glo_o.htm\\#otherwise_inaccessible_part"], + \["{output}", "26_glo_o.htm\\#output"], + \["{package}", "26_glo_p.htm\\#package"], + \["{package cell}", "26_glo_p.htm\\#package_cell"], + \["{package designator}", "26_glo_p.htm\\#package_designator"], + \["{package marker}", "26_glo_p.htm\\#package_marker"], + \["{package prefix}", "26_glo_p.htm\\#package_prefix"], + \["{package registry}", "26_glo_p.htm\\#package_registry"], + \["{pairwise}", "26_glo_p.htm\\#pairwise"], + \["{parallel}", "26_glo_p.htm\\#parallel"], + \["{parameter}", "26_glo_p.htm\\#parameter"], + \["{parameter specializer}", "26_glo_p.htm\\#parameter_specializer"], + \["{parameter specializer name}", "26_glo_p.htm\\#parameter_specializer_name"], + \["{pathname}", "26_glo_p.htm\\#pathname"], + \["{pathname designator}", "26_glo_p.htm\\#pathname_designator"], + \["{physical pathname}", "26_glo_p.htm\\#physical_pathname"], + \["{place}", "26_glo_p.htm\\#place"], + \["{plist}", "26_glo_p.htm\\#plist"], + \["{portable}", "26_glo_p.htm\\#portable"], + \["{potential copy}", "26_glo_p.htm\\#potential_copy"], + \["{potential number}", "26_glo_p.htm\\#potential_number"], + \["{pprint dispatch table}", "26_glo_p.htm\\#pprint_dispatch_table"], + \["{predicate}", "26_glo_p.htm\\#predicate"], + \["{present}", "26_glo_p.htm\\#present"], + \["{pretty print}", "26_glo_p.htm\\#pretty_print"], + \["{pretty printer}", "26_glo_p.htm\\#pretty_printer"], + \["{pretty printing stream}", "26_glo_p.htm\\#pretty_printing_stream"], + \["{primary method}", "26_glo_p.htm\\#primary_method"], + \["{primary value}", "26_glo_p.htm\\#primary_value"], + \["{principal}", "26_glo_p.htm\\#principal"], + \["{print name}", "26_glo_p.htm\\#print_name"], + \["{printer control variable}", "26_glo_p.htm\\#printer_control_variable"], + \["{printer escaping}", "26_glo_p.htm\\#printer_escaping"], + \["{printing}", "26_glo_p.htm\\#printing"], + \["{process}", "26_glo_p.htm\\#process"], + \["{processor}", "26_glo_p.htm\\#processor"], + \["{proclaim}", "26_glo_p.htm\\#proclaim"], + \["{proclamation}", "26_glo_p.htm\\#proclamation"], + \["{prog tag}", "26_glo_p.htm\\#prog_tag"], + \["{program}", "26_glo_p.htm\\#program"], + \["{programmer}", "26_glo_p.htm\\#programmer"], + \["{programmer code}", "26_glo_p.htm\\#programmer_code"], + \["{proper list}", "26_glo_p.htm\\#proper_list"], + \["{proper name}", "26_glo_p.htm\\#proper_name"], + \["{proper sequence}", "26_glo_p.htm\\#proper_sequence"], + \["{proper subtype}", "26_glo_p.htm\\#proper_subtype"], + \["{property}", "26_glo_p.htm\\#property"], + \["{property indicator}", "26_glo_p.htm\\#property_indicator"], + \["{property list}", "26_glo_p.htm\\#property_list"], + \["{property value}", "26_glo_p.htm\\#property_value"], + \["{purports to conform}", "26_glo_p.htm\\#purports_to_conform"], + \["{qualified method}", "26_glo_q.htm\\#qualified_method"], + \["{qualifier}", "26_glo_q.htm\\#qualifier"], + \["{query I/O}", "26_glo_q.htm\\#query_iSLo"], + \["{quoted object}", "26_glo_q.htm\\#quoted_object"], + \["{radix}", "26_glo_r.htm\\#radix"], + \["{random state}", "26_glo_r.htm\\#random_state"], + \["{rank}", "26_glo_r.htm\\#rank"], + \["{ratio}", "26_glo_r.htm\\#ratio"], + \["{ratio marker}", "26_glo_r.htm\\#ratio_marker"], + \["{rational}", "26_glo_r.htm\\#rational"], + \["{read}", "26_glo_r.htm\\#read"], + \["{readably}", "26_glo_r.htm\\#readably"], + \["{reader}", "26_glo_r.htm\\#reader"], + \["{reader macro}", "26_glo_r.htm\\#reader_macro"], + \["{reader macro function}", "26_glo_r.htm\\#reader_macro_function"], + \["{readtable}", "26_glo_r.htm\\#readtable"], + \["{readtable case}", "26_glo_r.htm\\#readtable_case"], + \["{readtable designator}", "26_glo_r.htm\\#readtable_designator"], + \["{recognizable subtype}", "26_glo_r.htm\\#recognizable_subtype"], + \["{reference}", "26_glo_r.htm\\#reference"], + \["{registered package}", "26_glo_r.htm\\#registered_package"], + \["{relative}", "26_glo_r.htm\\#relative"], + \["{repertoire}", "26_glo_r.htm\\#repertoire"], + \["{report}", "26_glo_r.htm\\#report"], + \["{report message}", "26_glo_r.htm\\#report_message"], + \["{required parameter}", "26_glo_r.htm\\#required_parameter"], + \["{rest list}", "26_glo_r.htm\\#rest_list"], + \["{rest parameter}", "26_glo_r.htm\\#rest_parameter"], + \["{restart}", "26_glo_r.htm\\#restart"], + \["{restart designator}", "26_glo_r.htm\\#restart_designator"], + \["{restart function}", "26_glo_r.htm\\#restart_function"], + \["{return}", "26_glo_r.htm\\#return"], + \["{return value}", "26_glo_r.htm\\#return_value"], + \["{right-parenthesis}", "26_glo_r.htm\\#right-parenthesis"], + \["{run time}", "26_glo_r.htm\\#run_time"], + \["{run-time compiler}", "26_glo_r.htm\\#run-time_compiler"], + \["{run-time definition}", "26_glo_r.htm\\#run-time_definition"], + \["{run-time environment}", "26_glo_r.htm\\#run-time_environment"], + \["{safe}", "26_glo_s.htm\\#safe"], + \["{safe call}", "26_glo_s.htm\\#safe_call"], + \["{same}", "26_glo_s.htm\\#same"], + \["{satisfy the test}", "26_glo_s.htm\\#satisfy_the_test"], + \["{scope}", "26_glo_s.htm\\#scope"], + \["{script}", "26_glo_s.htm\\#script"], + \["{secondary value}", "26_glo_s.htm\\#secondary_value"], + \["{section}", "26_glo_s.htm\\#section"], + \["{self-evaluating object}", "26_glo_s.htm\\#self-evaluating_object"], + \["{semi-standard}", "26_glo_s.htm\\#semi-standard"], + \["{semicolon}", "26_glo_s.htm\\#semicolon"], + \["{sequence}", "26_glo_s.htm\\#sequence"], + \["{sequence function}", "26_glo_s.htm\\#sequence_function"], + \["{sequential}", "26_glo_s.htm\\#sequential"], + \["{sequentially}", "26_glo_s.htm\\#sequentially"], + \["{serious condition}", "26_glo_s.htm\\#serious_condition"], + \["{session}", "26_glo_s.htm\\#session"], + \["{set}", "26_glo_s.htm\\#set"], + \["{setf expander}", "26_glo_s.htm\\#setf_expander"], + \["{setf expansion}", "26_glo_s.htm\\#setf_expansion"], + \["{setf function}", "26_glo_s.htm\\#setf_function"], + \["{setf function name}", "26_glo_s.htm\\#setf_function_name"], + \["{shadow}", "26_glo_s.htm\\#shadow"], + \["{shadowing symbol}", "26_glo_s.htm\\#shadowing_symbol"], + \["{shadowing symbols list}", "26_glo_s.htm\\#shadowing_symbols_list"], + \["{shared slot}", "26_glo_s.htm\\#shared_slot"], + \["{sharpsign}", "26_glo_s.htm\\#sharpsign"], + \["{short float}", "26_glo_s.htm\\#short_float"], + \["{sign}", "26_glo_s.htm\\#sign"], + \["{signal}", "26_glo_s.htm\\#signal"], + \["{signature}", "26_glo_s.htm\\#signature"], + \["{similar}", "26_glo_s.htm\\#similar"], + \["{similarity}", "26_glo_s.htm\\#similarity"], + \["{simple}", "26_glo_s.htm\\#simple"], + \["{simple array}", "26_glo_s.htm\\#simple_array"], + \["{simple bit array}", "26_glo_s.htm\\#simple_bit_array"], + \["{simple bit vector}", "26_glo_s.htm\\#simple_bit_vector"], + \["{simple condition}", "26_glo_s.htm\\#simple_condition"], + \["{simple general vector}", "26_glo_s.htm\\#simple_general_vector"], + \["{simple string}", "26_glo_s.htm\\#simple_string"], + \["{simple vector}", "26_glo_s.htm\\#simple_vector"], + \["{single escape}", "26_glo_s.htm\\#single_escape"], + \["{single float}", "26_glo_s.htm\\#single_float"], + \["{single-quote}", "26_glo_s.htm\\#single-quote"], + \["{singleton}", "26_glo_s.htm\\#singleton"], + \["{situation}", "26_glo_s.htm\\#situation"], + \["{slash}", "26_glo_s.htm\\#slash"], + \["{slot}", "26_glo_s.htm\\#slot"], + \["{slot specifier}", "26_glo_s.htm\\#slot_specifier"], + \["{source code}", "26_glo_s.htm\\#source_code"], + \["{source file}", "26_glo_s.htm\\#source_file"], + \["{space}", "26_glo_s.htm\\#space"], + \["{special form}", "26_glo_s.htm\\#special_form"], + \["{special operator}", "26_glo_s.htm\\#special_operator"], + \["{special variable}", "26_glo_s.htm\\#special_variable"], + \["{specialize}", "26_glo_s.htm\\#specialize"], + \["{specialized}", "26_glo_s.htm\\#specialized"], + \["{specialized lambda list}", "26_glo_s.htm\\#specialized_lambda_list"], + \["{spreadable argument list designator}", "26_glo_s.htm\\#spreadable_argument_list_designator"], + \["{stack allocate}", "26_glo_s.htm\\#stack_allocate"], + \["{stack-allocated}", "26_glo_s.htm\\#stack-allocated"], + \["{standard character}", "26_glo_s.htm\\#standard_character"], + \["{standard class}", "26_glo_s.htm\\#standard_class"], + \["{standard generic function}", "26_glo_s.htm\\#standard_generic_function"], + \["{standard input}", "26_glo_s.htm\\#standard_input"], + \["{standard method combination}", "26_glo_s.htm\\#standard_method_combination"], + \["{standard object}", "26_glo_s.htm\\#standard_object"], + \["{standard output}", "26_glo_s.htm\\#standard_output"], + \["{standard pprint dispatch table}", "26_glo_s.htm\\#standard_pprint_dispatch_table"], + \["{standard readtable}", "26_glo_s.htm\\#standard_readtable"], + \["{standard syntax}", "26_glo_s.htm\\#standard_syntax"], + \["{standardized}", "26_glo_s.htm\\#standardized"], + \["{startup environment}", "26_glo_s.htm\\#startup_environment"], + \["{step}", "26_glo_s.htm\\#step"], + \["{stream}", "26_glo_s.htm\\#stream"], + \["{stream associated with a file}", "26_glo_s.htm\\#stream_associated_with_a_file"], + \["{stream designator}", "26_glo_s.htm\\#stream_designator"], + \["{stream element type}", "26_glo_s.htm\\#stream_element_type"], + \["{stream variable}", "26_glo_s.htm\\#stream_variable"], + \["{stream variable designator}", "26_glo_s.htm\\#stream_variable_designator"], + \["{string}", "26_glo_s.htm\\#string"], + \["{string designator}", "26_glo_s.htm\\#string_designator"], + \["{string equal}", "26_glo_s.htm\\#string_equal"], + \["{string stream}", "26_glo_s.htm\\#string_stream"], + \["{structure}", "26_glo_s.htm\\#structure"], + \["{structure class}", "26_glo_s.htm\\#structure_class"], + \["{structure name}", "26_glo_s.htm\\#structure_name"], + \["{style warning}", "26_glo_s.htm\\#style_warning"], + \["{subclass}", "26_glo_s.htm\\#subclass"], + \["{subexpression}", "26_glo_s.htm\\#subexpression"], + \["{subform}", "26_glo_s.htm\\#subform"], + \["{subrepertoire}", "26_glo_s.htm\\#subrepertoire"], + \["{subtype}", "26_glo_s.htm\\#subtype"], + \["{superclass}", "26_glo_s.htm\\#superclass"], + \["{supertype}", "26_glo_s.htm\\#supertype"], + \["{supplied-p parameter}", "26_glo_s.htm\\#supplied-p_parameter"], + \["{symbol}", "26_glo_s.htm\\#symbol"], + \["{symbol macro}", "26_glo_s.htm\\#symbol_macro"], + \["{synonym stream}", "26_glo_s.htm\\#synonym_stream"], + \["{synonym stream symbol}", "26_glo_s.htm\\#synonym_stream_symbol"], + \["{syntax type}", "26_glo_s.htm\\#syntax_type"], + \["{system class}", "26_glo_s.htm\\#system_class"], + \["{system code}", "26_glo_s.htm\\#system_code"], + \["{t}", "26_glo_t.htm\\#t"], + \["{tag}", "26_glo_t.htm\\#tag"], + \["{tail}", "26_glo_t.htm\\#tail"], + \["{target}", "26_glo_t.htm\\#target"], + \["{terminal I/O}", "26_glo_t.htm\\#terminal_iSLo"], + \["{terminating}", "26_glo_t.htm\\#terminating"], + \["{tertiary value}", "26_glo_t.htm\\#tertiary_value"], + \["{throw}", "26_glo_t.htm\\#throw"], + \["{tilde}", "26_glo_t.htm\\#tilde"], + \["{time}", "26_glo_t.htm\\#time"], + \["{time zone}", "26_glo_t.htm\\#time_zone"], + \["{token}", "26_glo_t.htm\\#token"], + \["{top level form}", "26_glo_t.htm\\#top_level_form"], + \["{trace output}", "26_glo_t.htm\\#trace_output"], + \["{tree}", "26_glo_t.htm\\#tree"], + \["{tree structure}", "26_glo_t.htm\\#tree_structure"], + \["{true}", "26_glo_t.htm\\#true"], + \["{truename}", "26_glo_t.htm\\#truename"], + \["{two-way stream}", "26_glo_t.htm\\#two-way_stream"], + \["{type}", "26_glo_t.htm\\#type"], + \["{type declaration}", "26_glo_t.htm\\#type_declaration"], + \["{type equivalent}", "26_glo_t.htm\\#type_equivalent"], + \["{type expand}", "26_glo_t.htm\\#type_expand"], + \["{type specifier}", "26_glo_t.htm\\#type_specifier"], + \["{unbound}", "26_glo_u.htm\\#unbound"], + \["{unbound variable}", "26_glo_u.htm\\#unbound_variable"], + \["{undefined function}", "26_glo_u.htm\\#undefined_function"], + \["{unintern}", "26_glo_u.htm\\#unintern"], + \["{uninterned}", "26_glo_u.htm\\#uninterned"], + \["{universal time}", "26_glo_u.htm\\#universal_time"], + \["{unqualified method}", "26_glo_u.htm\\#unqualified_method"], + \["{unregistered package}", "26_glo_u.htm\\#unregistered_package"], + \["{unsafe}", "26_glo_u.htm\\#unsafe"], + \["{unsafe call}", "26_glo_u.htm\\#unsafe_call"], + \["{upgrade}", "26_glo_u.htm\\#upgrade"], + \["{upgraded array element type}", "26_glo_u.htm\\#upgraded_array_element_type"], + \["{upgraded complex part type}", "26_glo_u.htm\\#upgraded_complex_part_type"], + \["{uppercase}", "26_glo_u.htm\\#uppercase"], + \["{use}", "26_glo_u.htm\\#use"], + \["{use list}", "26_glo_u.htm\\#use_list"], + \["{user}", "26_glo_u.htm\\#user"], + \["{valid array dimension}", "26_glo_v.htm\\#valid_array_dimension"], + \["{valid array index}", "26_glo_v.htm\\#valid_array_index"], + \["{valid array row-major index}", "26_glo_v.htm\\#valid_array_row-major_index"], + \["{valid fill pointer}", "26_glo_v.htm\\#valid_fill_pointer"], + \["{valid logical pathname host}", "26_glo_v.htm\\#valid_logical_pathname_host"], + \["{valid pathname device}", "26_glo_v.htm\\#valid_pathname_device"], + \["{valid pathname directory}", "26_glo_v.htm\\#valid_pathname_directory"], + \["{valid pathname host}", "26_glo_v.htm\\#valid_pathname_host"], + \["{valid pathname name}", "26_glo_v.htm\\#valid_pathname_name"], + \["{valid pathname type}", "26_glo_v.htm\\#valid_pathname_type"], + \["{valid pathname version}", "26_glo_v.htm\\#valid_pathname_version"], + \["{valid physical pathname host}", "26_glo_v.htm\\#valid_physical_pathname_host"], + \["{valid sequence index}", "26_glo_v.htm\\#valid_sequence_index"], + \["{value}", "26_glo_v.htm\\#value"], + \["{value cell}", "26_glo_v.htm\\#value_cell"], + \["{variable}", "26_glo_v.htm\\#variable"], + \["{vector}", "26_glo_v.htm\\#vector"], + \["{vertical-bar}", "26_glo_v.htm\\#vertical-bar"], + \["{whitespace}", "26_glo_w.htm\\#whitespace"], + \["{wild}", "26_glo_w.htm\\#wild"], + \["{write}", "26_glo_w.htm\\#write"], + \["{writer}", "26_glo_w.htm\\#writer"], + \["{yield}", "26_glo_y.htm\\#yield"]] +endif + diff --git a/vim/bundle/slimv/ftplugin/slimv-cljapi.vim b/vim/bundle/slimv/ftplugin/slimv-cljapi.vim new file mode 100644 index 0000000..971fa4c --- /dev/null +++ b/vim/bundle/slimv/ftplugin/slimv-cljapi.vim @@ -0,0 +1,759 @@ +" slimv-cljapi.vim: +" Clojure API lookup support for Slimv +" Version: 0.9.6 +" Last Change: 12 Mar 2012 +" Maintainer: Tamas Kovacs +" License: This file is placed in the public domain. +" No warranty, express or implied. +" *** *** Use At-Your-Own-Risk! *** *** +" +" ===================================================================== +" +" Load Once: +if &cp || exists( 'g:slimv_cljapi_loaded' ) + finish +endif + +let g:slimv_cljapi_loaded = 1 + +" Root of the Clojure API +if !exists( 'g:slimv_cljapi_root' ) + let g:slimv_cljapi_root = 'http://clojure.github.com/clojure/' +endif + +if !exists( 'g:slimv_cljapi_db' ) + let g:slimv_cljapi_db = [ + \["*", "clojure.core-api.html\\#clojure.core/*"], + \["*'", "clojure.core-api.html\\#clojure.core/*'"], + \["*1", "clojure.core-api.html\\#clojure.core/*1"], + \["*2", "clojure.core-api.html\\#clojure.core/*2"], + \["*3", "clojure.core-api.html\\#clojure.core/*3"], + \["*agent*", "clojure.core-api.html\\#clojure.core/*agent*"], + \["*clojure-version*", "clojure.core-api.html\\#clojure.core/*clojure-version*"], + \["*command-line-args*", "clojure.core-api.html\\#clojure.core/*command-line-args*"], + \["*compile-files*", "clojure.core-api.html\\#clojure.core/*compile-files*"], + \["*compile-path*", "clojure.core-api.html\\#clojure.core/*compile-path*"], + \["*e", "clojure.core-api.html\\#clojure.core/*e"], + \["*err*", "clojure.core-api.html\\#clojure.core/*err*"], + \["*file*", "clojure.core-api.html\\#clojure.core/*file*"], + \["*flush-on-newline*", "clojure.core-api.html\\#clojure.core/*flush-on-newline*"], + \["*in*", "clojure.core-api.html\\#clojure.core/*in*"], + \["*ns*", "clojure.core-api.html\\#clojure.core/*ns*"], + \["*out*", "clojure.core-api.html\\#clojure.core/*out*"], + \["*print-dup*", "clojure.core-api.html\\#clojure.core/*print-dup*"], + \["*print-length*", "clojure.core-api.html\\#clojure.core/*print-length*"], + \["*print-level*", "clojure.core-api.html\\#clojure.core/*print-level*"], + \["*print-meta*", "clojure.core-api.html\\#clojure.core/*print-meta*"], + \["*print-readably*", "clojure.core-api.html\\#clojure.core/*print-readably*"], + \["*read-eval*", "clojure.core-api.html\\#clojure.core/*read-eval*"], + \["*unchecked-math*", "clojure.core-api.html\\#clojure.core/*unchecked-math*"], + \["*warn-on-reflection*", "clojure.core-api.html\\#clojure.core/*warn-on-reflection*"], + \["+", "clojure.core-api.html\\#clojure.core/+"], + \["+'", "clojure.core-api.html\\#clojure.core/+'"], + \["-", "clojure.core-api.html\\#clojure.core/-"], + \["-'", "clojure.core-api.html\\#clojure.core/-'"], + \["->", "clojure.core-api.html\\#clojure.core/->"], + \["->>", "clojure.core-api.html\\#clojure.core/->>"], + \["..", "clojure.core-api.html\\#clojure.core/.."], + \["/", "clojure.core-api.html\\#clojure.core//"], + \["<", "clojure.core-api.html\\#clojure.core/<"], + \["<=", "clojure.core-api.html\\#clojure.core/<="], + \["=", "clojure.core-api.html\\#clojure.core/="], + \["==", "clojure.core-api.html\\#clojure.core/=="], + \[">", "clojure.core-api.html\\#clojure.core/>"], + \[">=", "clojure.core-api.html\\#clojure.core/>="], + \["accessor", "clojure.core-api.html\\#clojure.core/accessor"], + \["aclone", "clojure.core-api.html\\#clojure.core/aclone"], + \["add-classpath", "clojure.core-api.html\\#clojure.core/add-classpath"], + \["add-watch", "clojure.core-api.html\\#clojure.core/add-watch"], + \["agent", "clojure.core-api.html\\#clojure.core/agent"], + \["agent-error", "clojure.core-api.html\\#clojure.core/agent-error"], + \["agent-errors", "clojure.core-api.html\\#clojure.core/agent-errors"], + \["aget", "clojure.core-api.html\\#clojure.core/aget"], + \["alength", "clojure.core-api.html\\#clojure.core/alength"], + \["alias", "clojure.core-api.html\\#clojure.core/alias"], + \["all-ns", "clojure.core-api.html\\#clojure.core/all-ns"], + \["alter", "clojure.core-api.html\\#clojure.core/alter"], + \["alter-meta!", "clojure.core-api.html\\#clojure.core/alter-meta!"], + \["alter-var-root", "clojure.core-api.html\\#clojure.core/alter-var-root"], + \["amap", "clojure.core-api.html\\#clojure.core/amap"], + \["ancestors", "clojure.core-api.html\\#clojure.core/ancestors"], + \["and", "clojure.core-api.html\\#clojure.core/and"], + \["apply", "clojure.core-api.html\\#clojure.core/apply"], + \["areduce", "clojure.core-api.html\\#clojure.core/areduce"], + \["array-map", "clojure.core-api.html\\#clojure.core/array-map"], + \["aset", "clojure.core-api.html\\#clojure.core/aset"], + \["aset-boolean", "clojure.core-api.html\\#clojure.core/aset-boolean"], + \["aset-byte", "clojure.core-api.html\\#clojure.core/aset-byte"], + \["aset-char", "clojure.core-api.html\\#clojure.core/aset-char"], + \["aset-double", "clojure.core-api.html\\#clojure.core/aset-double"], + \["aset-float", "clojure.core-api.html\\#clojure.core/aset-float"], + \["aset-int", "clojure.core-api.html\\#clojure.core/aset-int"], + \["aset-long", "clojure.core-api.html\\#clojure.core/aset-long"], + \["aset-short", "clojure.core-api.html\\#clojure.core/aset-short"], + \["assert", "clojure.core-api.html\\#clojure.core/assert"], + \["assoc", "clojure.core-api.html\\#clojure.core/assoc"], + \["assoc!", "clojure.core-api.html\\#clojure.core/assoc!"], + \["assoc-in", "clojure.core-api.html\\#clojure.core/assoc-in"], + \["associative?", "clojure.core-api.html\\#clojure.core/associative?"], + \["atom", "clojure.core-api.html\\#clojure.core/atom"], + \["await", "clojure.core-api.html\\#clojure.core/await"], + \["await-for", "clojure.core-api.html\\#clojure.core/await-for"], + \["bases", "clojure.core-api.html\\#clojure.core/bases"], + \["bean", "clojure.core-api.html\\#clojure.core/bean"], + \["bigdec", "clojure.core-api.html\\#clojure.core/bigdec"], + \["bigint", "clojure.core-api.html\\#clojure.core/bigint"], + \["biginteger", "clojure.core-api.html\\#clojure.core/biginteger"], + \["binding", "clojure.core-api.html\\#clojure.core/binding"], + \["bit-and", "clojure.core-api.html\\#clojure.core/bit-and"], + \["bit-and-not", "clojure.core-api.html\\#clojure.core/bit-and-not"], + \["bit-clear", "clojure.core-api.html\\#clojure.core/bit-clear"], + \["bit-flip", "clojure.core-api.html\\#clojure.core/bit-flip"], + \["bit-not", "clojure.core-api.html\\#clojure.core/bit-not"], + \["bit-or", "clojure.core-api.html\\#clojure.core/bit-or"], + \["bit-set", "clojure.core-api.html\\#clojure.core/bit-set"], + \["bit-shift-left", "clojure.core-api.html\\#clojure.core/bit-shift-left"], + \["bit-shift-right", "clojure.core-api.html\\#clojure.core/bit-shift-right"], + \["bit-test", "clojure.core-api.html\\#clojure.core/bit-test"], + \["bit-xor", "clojure.core-api.html\\#clojure.core/bit-xor"], + \["boolean", "clojure.core-api.html\\#clojure.core/boolean"], + \["boolean-array", "clojure.core-api.html\\#clojure.core/boolean-array"], + \["booleans", "clojure.core-api.html\\#clojure.core/booleans"], + \["bound-fn", "clojure.core-api.html\\#clojure.core/bound-fn"], + \["bound-fn*", "clojure.core-api.html\\#clojure.core/bound-fn*"], + \["bound?", "clojure.core-api.html\\#clojure.core/bound?"], + \["butlast", "clojure.core-api.html\\#clojure.core/butlast"], + \["byte", "clojure.core-api.html\\#clojure.core/byte"], + \["byte-array", "clojure.core-api.html\\#clojure.core/byte-array"], + \["bytes", "clojure.core-api.html\\#clojure.core/bytes"], + \["case", "clojure.core-api.html\\#clojure.core/case"], + \["cast", "clojure.core-api.html\\#clojure.core/cast"], + \["char", "clojure.core-api.html\\#clojure.core/char"], + \["char-array", "clojure.core-api.html\\#clojure.core/char-array"], + \["char-escape-string", "clojure.core-api.html\\#clojure.core/char-escape-string"], + \["char-name-string", "clojure.core-api.html\\#clojure.core/char-name-string"], + \["char?", "clojure.core-api.html\\#clojure.core/char?"], + \["chars", "clojure.core-api.html\\#clojure.core/chars"], + \["class", "clojure.core-api.html\\#clojure.core/class"], + \["class?", "clojure.core-api.html\\#clojure.core/class?"], + \["clear-agent-errors", "clojure.core-api.html\\#clojure.core/clear-agent-errors"], + \["clojure-version", "clojure.core-api.html\\#clojure.core/clojure-version"], + \["coll?", "clojure.core-api.html\\#clojure.core/coll?"], + \["comment", "clojure.core-api.html\\#clojure.core/comment"], + \["commute", "clojure.core-api.html\\#clojure.core/commute"], + \["comp", "clojure.core-api.html\\#clojure.core/comp"], + \["comparator", "clojure.core-api.html\\#clojure.core/comparator"], + \["compare", "clojure.core-api.html\\#clojure.core/compare"], + \["compare-and-set!", "clojure.core-api.html\\#clojure.core/compare-and-set!"], + \["compile", "clojure.core-api.html\\#clojure.core/compile"], + \["complement", "clojure.core-api.html\\#clojure.core/complement"], + \["concat", "clojure.core-api.html\\#clojure.core/concat"], + \["cond", "clojure.core-api.html\\#clojure.core/cond"], + \["condp", "clojure.core-api.html\\#clojure.core/condp"], + \["conj", "clojure.core-api.html\\#clojure.core/conj"], + \["conj!", "clojure.core-api.html\\#clojure.core/conj!"], + \["cons", "clojure.core-api.html\\#clojure.core/cons"], + \["constantly", "clojure.core-api.html\\#clojure.core/constantly"], + \["construct-proxy", "clojure.core-api.html\\#clojure.core/construct-proxy"], + \["contains?", "clojure.core-api.html\\#clojure.core/contains?"], + \["count", "clojure.core-api.html\\#clojure.core/count"], + \["counted?", "clojure.core-api.html\\#clojure.core/counted?"], + \["create-ns", "clojure.core-api.html\\#clojure.core/create-ns"], + \["create-struct", "clojure.core-api.html\\#clojure.core/create-struct"], + \["cycle", "clojure.core-api.html\\#clojure.core/cycle"], + \["dec", "clojure.core-api.html\\#clojure.core/dec"], + \["dec'", "clojure.core-api.html\\#clojure.core/dec'"], + \["decimal?", "clojure.core-api.html\\#clojure.core/decimal?"], + \["declare", "clojure.core-api.html\\#clojure.core/declare"], + \["definline", "clojure.core-api.html\\#clojure.core/definline"], + \["defmacro", "clojure.core-api.html\\#clojure.core/defmacro"], + \["defmethod", "clojure.core-api.html\\#clojure.core/defmethod"], + \["defmulti", "clojure.core-api.html\\#clojure.core/defmulti"], + \["defn", "clojure.core-api.html\\#clojure.core/defn"], + \["defn-", "clojure.core-api.html\\#clojure.core/defn-"], + \["defonce", "clojure.core-api.html\\#clojure.core/defonce"], + \["defprotocol", "clojure.core-api.html\\#clojure.core/defprotocol"], + \["defrecord", "clojure.core-api.html\\#clojure.core/defrecord"], + \["defstruct", "clojure.core-api.html\\#clojure.core/defstruct"], + \["deftype", "clojure.core-api.html\\#clojure.core/deftype"], + \["delay", "clojure.core-api.html\\#clojure.core/delay"], + \["delay?", "clojure.core-api.html\\#clojure.core/delay?"], + \["deliver", "clojure.core-api.html\\#clojure.core/deliver"], + \["denominator", "clojure.core-api.html\\#clojure.core/denominator"], + \["deref", "clojure.core-api.html\\#clojure.core/deref"], + \["derive", "clojure.core-api.html\\#clojure.core/derive"], + \["descendants", "clojure.core-api.html\\#clojure.core/descendants"], + \["disj", "clojure.core-api.html\\#clojure.core/disj"], + \["disj!", "clojure.core-api.html\\#clojure.core/disj!"], + \["dissoc", "clojure.core-api.html\\#clojure.core/dissoc"], + \["dissoc!", "clojure.core-api.html\\#clojure.core/dissoc!"], + \["distinct", "clojure.core-api.html\\#clojure.core/distinct"], + \["distinct?", "clojure.core-api.html\\#clojure.core/distinct?"], + \["doall", "clojure.core-api.html\\#clojure.core/doall"], + \["dorun", "clojure.core-api.html\\#clojure.core/dorun"], + \["doseq", "clojure.core-api.html\\#clojure.core/doseq"], + \["dosync", "clojure.core-api.html\\#clojure.core/dosync"], + \["dotimes", "clojure.core-api.html\\#clojure.core/dotimes"], + \["doto", "clojure.core-api.html\\#clojure.core/doto"], + \["double", "clojure.core-api.html\\#clojure.core/double"], + \["double-array", "clojure.core-api.html\\#clojure.core/double-array"], + \["doubles", "clojure.core-api.html\\#clojure.core/doubles"], + \["drop", "clojure.core-api.html\\#clojure.core/drop"], + \["drop-last", "clojure.core-api.html\\#clojure.core/drop-last"], + \["drop-while", "clojure.core-api.html\\#clojure.core/drop-while"], + \["empty", "clojure.core-api.html\\#clojure.core/empty"], + \["empty?", "clojure.core-api.html\\#clojure.core/empty?"], + \["ensure", "clojure.core-api.html\\#clojure.core/ensure"], + \["enumeration-seq", "clojure.core-api.html\\#clojure.core/enumeration-seq"], + \["error-handler", "clojure.core-api.html\\#clojure.core/error-handler"], + \["error-mode", "clojure.core-api.html\\#clojure.core/error-mode"], + \["eval", "clojure.core-api.html\\#clojure.core/eval"], + \["even?", "clojure.core-api.html\\#clojure.core/even?"], + \["every-pred", "clojure.core-api.html\\#clojure.core/every-pred"], + \["every?", "clojure.core-api.html\\#clojure.core/every?"], + \["extend", "clojure.core-api.html\\#clojure.core/extend"], + \["extend-protocol", "clojure.core-api.html\\#clojure.core/extend-protocol"], + \["extend-type", "clojure.core-api.html\\#clojure.core/extend-type"], + \["extenders", "clojure.core-api.html\\#clojure.core/extenders"], + \["extends?", "clojure.core-api.html\\#clojure.core/extends?"], + \["false?", "clojure.core-api.html\\#clojure.core/false?"], + \["ffirst", "clojure.core-api.html\\#clojure.core/ffirst"], + \["file-seq", "clojure.core-api.html\\#clojure.core/file-seq"], + \["filter", "clojure.core-api.html\\#clojure.core/filter"], + \["find", "clojure.core-api.html\\#clojure.core/find"], + \["find-keyword", "clojure.core-api.html\\#clojure.core/find-keyword"], + \["find-ns", "clojure.core-api.html\\#clojure.core/find-ns"], + \["find-var", "clojure.core-api.html\\#clojure.core/find-var"], + \["first", "clojure.core-api.html\\#clojure.core/first"], + \["flatten", "clojure.core-api.html\\#clojure.core/flatten"], + \["float", "clojure.core-api.html\\#clojure.core/float"], + \["float-array", "clojure.core-api.html\\#clojure.core/float-array"], + \["float?", "clojure.core-api.html\\#clojure.core/float?"], + \["floats", "clojure.core-api.html\\#clojure.core/floats"], + \["flush", "clojure.core-api.html\\#clojure.core/flush"], + \["fn", "clojure.core-api.html\\#clojure.core/fn"], + \["fn?", "clojure.core-api.html\\#clojure.core/fn?"], + \["fnext", "clojure.core-api.html\\#clojure.core/fnext"], + \["fnil", "clojure.core-api.html\\#clojure.core/fnil"], + \["for", "clojure.core-api.html\\#clojure.core/for"], + \["force", "clojure.core-api.html\\#clojure.core/force"], + \["format", "clojure.core-api.html\\#clojure.core/format"], + \["frequencies", "clojure.core-api.html\\#clojure.core/frequencies"], + \["future", "clojure.core-api.html\\#clojure.core/future"], + \["future-call", "clojure.core-api.html\\#clojure.core/future-call"], + \["future-cancel", "clojure.core-api.html\\#clojure.core/future-cancel"], + \["future-cancelled?", "clojure.core-api.html\\#clojure.core/future-cancelled?"], + \["future-done?", "clojure.core-api.html\\#clojure.core/future-done?"], + \["future?", "clojure.core-api.html\\#clojure.core/future?"], + \["gen-class", "clojure.core-api.html\\#clojure.core/gen-class"], + \["gen-interface", "clojure.core-api.html\\#clojure.core/gen-interface"], + \["gensym", "clojure.core-api.html\\#clojure.core/gensym"], + \["get", "clojure.core-api.html\\#clojure.core/get"], + \["get-in", "clojure.core-api.html\\#clojure.core/get-in"], + \["get-method", "clojure.core-api.html\\#clojure.core/get-method"], + \["get-proxy-class", "clojure.core-api.html\\#clojure.core/get-proxy-class"], + \["get-thread-bindings", "clojure.core-api.html\\#clojure.core/get-thread-bindings"], + \["get-validator", "clojure.core-api.html\\#clojure.core/get-validator"], + \["group-by", "clojure.core-api.html\\#clojure.core/group-by"], + \["hash", "clojure.core-api.html\\#clojure.core/hash"], + \["hash-map", "clojure.core-api.html\\#clojure.core/hash-map"], + \["hash-set", "clojure.core-api.html\\#clojure.core/hash-set"], + \["identical?", "clojure.core-api.html\\#clojure.core/identical?"], + \["identity", "clojure.core-api.html\\#clojure.core/identity"], + \["if-let", "clojure.core-api.html\\#clojure.core/if-let"], + \["if-not", "clojure.core-api.html\\#clojure.core/if-not"], + \["ifn?", "clojure.core-api.html\\#clojure.core/ifn?"], + \["import", "clojure.core-api.html\\#clojure.core/import"], + \["in-ns", "clojure.core-api.html\\#clojure.core/in-ns"], + \["inc", "clojure.core-api.html\\#clojure.core/inc"], + \["inc'", "clojure.core-api.html\\#clojure.core/inc'"], + \["init-proxy", "clojure.core-api.html\\#clojure.core/init-proxy"], + \["instance?", "clojure.core-api.html\\#clojure.core/instance?"], + \["int", "clojure.core-api.html\\#clojure.core/int"], + \["int-array", "clojure.core-api.html\\#clojure.core/int-array"], + \["integer?", "clojure.core-api.html\\#clojure.core/integer?"], + \["interleave", "clojure.core-api.html\\#clojure.core/interleave"], + \["intern", "clojure.core-api.html\\#clojure.core/intern"], + \["interpose", "clojure.core-api.html\\#clojure.core/interpose"], + \["into", "clojure.core-api.html\\#clojure.core/into"], + \["into-array", "clojure.core-api.html\\#clojure.core/into-array"], + \["ints", "clojure.core-api.html\\#clojure.core/ints"], + \["io!", "clojure.core-api.html\\#clojure.core/io!"], + \["isa?", "clojure.core-api.html\\#clojure.core/isa?"], + \["iterate", "clojure.core-api.html\\#clojure.core/iterate"], + \["iterator-seq", "clojure.core-api.html\\#clojure.core/iterator-seq"], + \["juxt", "clojure.core-api.html\\#clojure.core/juxt"], + \["keep", "clojure.core-api.html\\#clojure.core/keep"], + \["keep-indexed", "clojure.core-api.html\\#clojure.core/keep-indexed"], + \["key", "clojure.core-api.html\\#clojure.core/key"], + \["keys", "clojure.core-api.html\\#clojure.core/keys"], + \["keyword", "clojure.core-api.html\\#clojure.core/keyword"], + \["keyword?", "clojure.core-api.html\\#clojure.core/keyword?"], + \["last", "clojure.core-api.html\\#clojure.core/last"], + \["lazy-cat", "clojure.core-api.html\\#clojure.core/lazy-cat"], + \["lazy-seq", "clojure.core-api.html\\#clojure.core/lazy-seq"], + \["let", "clojure.core-api.html\\#clojure.core/let"], + \["letfn", "clojure.core-api.html\\#clojure.core/letfn"], + \["line-seq", "clojure.core-api.html\\#clojure.core/line-seq"], + \["list", "clojure.core-api.html\\#clojure.core/list"], + \["list*", "clojure.core-api.html\\#clojure.core/list*"], + \["list?", "clojure.core-api.html\\#clojure.core/list?"], + \["load", "clojure.core-api.html\\#clojure.core/load"], + \["load-file", "clojure.core-api.html\\#clojure.core/load-file"], + \["load-reader", "clojure.core-api.html\\#clojure.core/load-reader"], + \["load-string", "clojure.core-api.html\\#clojure.core/load-string"], + \["loaded-libs", "clojure.core-api.html\\#clojure.core/loaded-libs"], + \["locking", "clojure.core-api.html\\#clojure.core/locking"], + \["long", "clojure.core-api.html\\#clojure.core/long"], + \["long-array", "clojure.core-api.html\\#clojure.core/long-array"], + \["longs", "clojure.core-api.html\\#clojure.core/longs"], + \["loop", "clojure.core-api.html\\#clojure.core/loop"], + \["macroexpand", "clojure.core-api.html\\#clojure.core/macroexpand"], + \["macroexpand-1", "clojure.core-api.html\\#clojure.core/macroexpand-1"], + \["make-array", "clojure.core-api.html\\#clojure.core/make-array"], + \["make-hierarchy", "clojure.core-api.html\\#clojure.core/make-hierarchy"], + \["map", "clojure.core-api.html\\#clojure.core/map"], + \["map-indexed", "clojure.core-api.html\\#clojure.core/map-indexed"], + \["map?", "clojure.core-api.html\\#clojure.core/map?"], + \["mapcat", "clojure.core-api.html\\#clojure.core/mapcat"], + \["max", "clojure.core-api.html\\#clojure.core/max"], + \["max-key", "clojure.core-api.html\\#clojure.core/max-key"], + \["memfn", "clojure.core-api.html\\#clojure.core/memfn"], + \["memoize", "clojure.core-api.html\\#clojure.core/memoize"], + \["merge", "clojure.core-api.html\\#clojure.core/merge"], + \["merge-with", "clojure.core-api.html\\#clojure.core/merge-with"], + \["meta", "clojure.core-api.html\\#clojure.core/meta"], + \["methods", "clojure.core-api.html\\#clojure.core/methods"], + \["min", "clojure.core-api.html\\#clojure.core/min"], + \["min-key", "clojure.core-api.html\\#clojure.core/min-key"], + \["mod", "clojure.core-api.html\\#clojure.core/mod"], + \["name", "clojure.core-api.html\\#clojure.core/name"], + \["namespace", "clojure.core-api.html\\#clojure.core/namespace"], + \["namespace-munge", "clojure.core-api.html\\#clojure.core/namespace-munge"], + \["neg?", "clojure.core-api.html\\#clojure.core/neg?"], + \["newline", "clojure.core-api.html\\#clojure.core/newline"], + \["next", "clojure.core-api.html\\#clojure.core/next"], + \["nfirst", "clojure.core-api.html\\#clojure.core/nfirst"], + \["nil?", "clojure.core-api.html\\#clojure.core/nil?"], + \["nnext", "clojure.core-api.html\\#clojure.core/nnext"], + \["not", "clojure.core-api.html\\#clojure.core/not"], + \["not-any?", "clojure.core-api.html\\#clojure.core/not-any?"], + \["not-empty", "clojure.core-api.html\\#clojure.core/not-empty"], + \["not-every?", "clojure.core-api.html\\#clojure.core/not-every?"], + \["not=", "clojure.core-api.html\\#clojure.core/not="], + \["ns", "clojure.core-api.html\\#clojure.core/ns"], + \["ns-aliases", "clojure.core-api.html\\#clojure.core/ns-aliases"], + \["ns-imports", "clojure.core-api.html\\#clojure.core/ns-imports"], + \["ns-interns", "clojure.core-api.html\\#clojure.core/ns-interns"], + \["ns-map", "clojure.core-api.html\\#clojure.core/ns-map"], + \["ns-name", "clojure.core-api.html\\#clojure.core/ns-name"], + \["ns-publics", "clojure.core-api.html\\#clojure.core/ns-publics"], + \["ns-refers", "clojure.core-api.html\\#clojure.core/ns-refers"], + \["ns-resolve", "clojure.core-api.html\\#clojure.core/ns-resolve"], + \["ns-unalias", "clojure.core-api.html\\#clojure.core/ns-unalias"], + \["ns-unmap", "clojure.core-api.html\\#clojure.core/ns-unmap"], + \["nth", "clojure.core-api.html\\#clojure.core/nth"], + \["nthnext", "clojure.core-api.html\\#clojure.core/nthnext"], + \["nthrest", "clojure.core-api.html\\#clojure.core/nthrest"], + \["num", "clojure.core-api.html\\#clojure.core/num"], + \["number?", "clojure.core-api.html\\#clojure.core/number?"], + \["numerator", "clojure.core-api.html\\#clojure.core/numerator"], + \["object-array", "clojure.core-api.html\\#clojure.core/object-array"], + \["odd?", "clojure.core-api.html\\#clojure.core/odd?"], + \["or", "clojure.core-api.html\\#clojure.core/or"], + \["parents", "clojure.core-api.html\\#clojure.core/parents"], + \["partial", "clojure.core-api.html\\#clojure.core/partial"], + \["partition", "clojure.core-api.html\\#clojure.core/partition"], + \["partition-all", "clojure.core-api.html\\#clojure.core/partition-all"], + \["partition-by", "clojure.core-api.html\\#clojure.core/partition-by"], + \["pcalls", "clojure.core-api.html\\#clojure.core/pcalls"], + \["peek", "clojure.core-api.html\\#clojure.core/peek"], + \["persistent!", "clojure.core-api.html\\#clojure.core/persistent!"], + \["pmap", "clojure.core-api.html\\#clojure.core/pmap"], + \["pop", "clojure.core-api.html\\#clojure.core/pop"], + \["pop!", "clojure.core-api.html\\#clojure.core/pop!"], + \["pop-thread-bindings", "clojure.core-api.html\\#clojure.core/pop-thread-bindings"], + \["pos?", "clojure.core-api.html\\#clojure.core/pos?"], + \["pr", "clojure.core-api.html\\#clojure.core/pr"], + \["pr-str", "clojure.core-api.html\\#clojure.core/pr-str"], + \["prefer-method", "clojure.core-api.html\\#clojure.core/prefer-method"], + \["prefers", "clojure.core-api.html\\#clojure.core/prefers"], + \["print", "clojure.core-api.html\\#clojure.core/print"], + \["print-str", "clojure.core-api.html\\#clojure.core/print-str"], + \["printf", "clojure.core-api.html\\#clojure.core/printf"], + \["println", "clojure.core-api.html\\#clojure.core/println"], + \["println-str", "clojure.core-api.html\\#clojure.core/println-str"], + \["prn", "clojure.core-api.html\\#clojure.core/prn"], + \["prn-str", "clojure.core-api.html\\#clojure.core/prn-str"], + \["promise", "clojure.core-api.html\\#clojure.core/promise"], + \["proxy", "clojure.core-api.html\\#clojure.core/proxy"], + \["proxy-mappings", "clojure.core-api.html\\#clojure.core/proxy-mappings"], + \["proxy-super", "clojure.core-api.html\\#clojure.core/proxy-super"], + \["push-thread-bindings", "clojure.core-api.html\\#clojure.core/push-thread-bindings"], + \["pvalues", "clojure.core-api.html\\#clojure.core/pvalues"], + \["quot", "clojure.core-api.html\\#clojure.core/quot"], + \["rand", "clojure.core-api.html\\#clojure.core/rand"], + \["rand-int", "clojure.core-api.html\\#clojure.core/rand-int"], + \["rand-nth", "clojure.core-api.html\\#clojure.core/rand-nth"], + \["range", "clojure.core-api.html\\#clojure.core/range"], + \["ratio?", "clojure.core-api.html\\#clojure.core/ratio?"], + \["rational?", "clojure.core-api.html\\#clojure.core/rational?"], + \["rationalize", "clojure.core-api.html\\#clojure.core/rationalize"], + \["re-find", "clojure.core-api.html\\#clojure.core/re-find"], + \["re-groups", "clojure.core-api.html\\#clojure.core/re-groups"], + \["re-matcher", "clojure.core-api.html\\#clojure.core/re-matcher"], + \["re-matches", "clojure.core-api.html\\#clojure.core/re-matches"], + \["re-pattern", "clojure.core-api.html\\#clojure.core/re-pattern"], + \["re-seq", "clojure.core-api.html\\#clojure.core/re-seq"], + \["read", "clojure.core-api.html\\#clojure.core/read"], + \["read-line", "clojure.core-api.html\\#clojure.core/read-line"], + \["read-string", "clojure.core-api.html\\#clojure.core/read-string"], + \["realized?", "clojure.core-api.html\\#clojure.core/realized?"], + \["reduce", "clojure.core-api.html\\#clojure.core/reduce"], + \["reductions", "clojure.core-api.html\\#clojure.core/reductions"], + \["ref", "clojure.core-api.html\\#clojure.core/ref"], + \["ref-history-count", "clojure.core-api.html\\#clojure.core/ref-history-count"], + \["ref-max-history", "clojure.core-api.html\\#clojure.core/ref-max-history"], + \["ref-min-history", "clojure.core-api.html\\#clojure.core/ref-min-history"], + \["ref-set", "clojure.core-api.html\\#clojure.core/ref-set"], + \["refer", "clojure.core-api.html\\#clojure.core/refer"], + \["refer-clojure", "clojure.core-api.html\\#clojure.core/refer-clojure"], + \["reify", "clojure.core-api.html\\#clojure.core/reify"], + \["release-pending-sends", "clojure.core-api.html\\#clojure.core/release-pending-sends"], + \["rem", "clojure.core-api.html\\#clojure.core/rem"], + \["remove", "clojure.core-api.html\\#clojure.core/remove"], + \["remove-all-methods", "clojure.core-api.html\\#clojure.core/remove-all-methods"], + \["remove-method", "clojure.core-api.html\\#clojure.core/remove-method"], + \["remove-ns", "clojure.core-api.html\\#clojure.core/remove-ns"], + \["remove-watch", "clojure.core-api.html\\#clojure.core/remove-watch"], + \["repeat", "clojure.core-api.html\\#clojure.core/repeat"], + \["repeatedly", "clojure.core-api.html\\#clojure.core/repeatedly"], + \["replace", "clojure.core-api.html\\#clojure.core/replace"], + \["replicate", "clojure.core-api.html\\#clojure.core/replicate"], + \["require", "clojure.core-api.html\\#clojure.core/require"], + \["reset!", "clojure.core-api.html\\#clojure.core/reset!"], + \["reset-meta!", "clojure.core-api.html\\#clojure.core/reset-meta!"], + \["resolve", "clojure.core-api.html\\#clojure.core/resolve"], + \["rest", "clojure.core-api.html\\#clojure.core/rest"], + \["restart-agent", "clojure.core-api.html\\#clojure.core/restart-agent"], + \["resultset-seq", "clojure.core-api.html\\#clojure.core/resultset-seq"], + \["reverse", "clojure.core-api.html\\#clojure.core/reverse"], + \["reversible?", "clojure.core-api.html\\#clojure.core/reversible?"], + \["rseq", "clojure.core-api.html\\#clojure.core/rseq"], + \["rsubseq", "clojure.core-api.html\\#clojure.core/rsubseq"], + \["satisfies?", "clojure.core-api.html\\#clojure.core/satisfies?"], + \["second", "clojure.core-api.html\\#clojure.core/second"], + \["select-keys", "clojure.core-api.html\\#clojure.core/select-keys"], + \["send", "clojure.core-api.html\\#clojure.core/send"], + \["send-off", "clojure.core-api.html\\#clojure.core/send-off"], + \["seq", "clojure.core-api.html\\#clojure.core/seq"], + \["seq?", "clojure.core-api.html\\#clojure.core/seq?"], + \["seque", "clojure.core-api.html\\#clojure.core/seque"], + \["sequence", "clojure.core-api.html\\#clojure.core/sequence"], + \["sequential?", "clojure.core-api.html\\#clojure.core/sequential?"], + \["set", "clojure.core-api.html\\#clojure.core/set"], + \["set-error-handler!", "clojure.core-api.html\\#clojure.core/set-error-handler!"], + \["set-error-mode!", "clojure.core-api.html\\#clojure.core/set-error-mode!"], + \["set-validator!", "clojure.core-api.html\\#clojure.core/set-validator!"], + \["set?", "clojure.core-api.html\\#clojure.core/set?"], + \["short", "clojure.core-api.html\\#clojure.core/short"], + \["short-array", "clojure.core-api.html\\#clojure.core/short-array"], + \["shorts", "clojure.core-api.html\\#clojure.core/shorts"], + \["shuffle", "clojure.core-api.html\\#clojure.core/shuffle"], + \["shutdown-agents", "clojure.core-api.html\\#clojure.core/shutdown-agents"], + \["slurp", "clojure.core-api.html\\#clojure.core/slurp"], + \["some", "clojure.core-api.html\\#clojure.core/some"], + \["some-fn", "clojure.core-api.html\\#clojure.core/some-fn"], + \["sort", "clojure.core-api.html\\#clojure.core/sort"], + \["sort-by", "clojure.core-api.html\\#clojure.core/sort-by"], + \["sorted-map", "clojure.core-api.html\\#clojure.core/sorted-map"], + \["sorted-map-by", "clojure.core-api.html\\#clojure.core/sorted-map-by"], + \["sorted-set", "clojure.core-api.html\\#clojure.core/sorted-set"], + \["sorted-set-by", "clojure.core-api.html\\#clojure.core/sorted-set-by"], + \["sorted?", "clojure.core-api.html\\#clojure.core/sorted?"], + \["special-symbol?", "clojure.core-api.html\\#clojure.core/special-symbol?"], + \["spit", "clojure.core-api.html\\#clojure.core/spit"], + \["split-at", "clojure.core-api.html\\#clojure.core/split-at"], + \["split-with", "clojure.core-api.html\\#clojure.core/split-with"], + \["str", "clojure.core-api.html\\#clojure.core/str"], + \["string?", "clojure.core-api.html\\#clojure.core/string?"], + \["struct", "clojure.core-api.html\\#clojure.core/struct"], + \["struct-map", "clojure.core-api.html\\#clojure.core/struct-map"], + \["subs", "clojure.core-api.html\\#clojure.core/subs"], + \["subseq", "clojure.core-api.html\\#clojure.core/subseq"], + \["subvec", "clojure.core-api.html\\#clojure.core/subvec"], + \["supers", "clojure.core-api.html\\#clojure.core/supers"], + \["swap!", "clojure.core-api.html\\#clojure.core/swap!"], + \["symbol", "clojure.core-api.html\\#clojure.core/symbol"], + \["symbol?", "clojure.core-api.html\\#clojure.core/symbol?"], + \["sync", "clojure.core-api.html\\#clojure.core/sync"], + \["take", "clojure.core-api.html\\#clojure.core/take"], + \["take-last", "clojure.core-api.html\\#clojure.core/take-last"], + \["take-nth", "clojure.core-api.html\\#clojure.core/take-nth"], + \["take-while", "clojure.core-api.html\\#clojure.core/take-while"], + \["test", "clojure.core-api.html\\#clojure.core/test"], + \["the-ns", "clojure.core-api.html\\#clojure.core/the-ns"], + \["thread-bound?", "clojure.core-api.html\\#clojure.core/thread-bound?"], + \["time", "clojure.core-api.html\\#clojure.core/time"], + \["to-array", "clojure.core-api.html\\#clojure.core/to-array"], + \["to-array-2d", "clojure.core-api.html\\#clojure.core/to-array-2d"], + \["trampoline", "clojure.core-api.html\\#clojure.core/trampoline"], + \["transient", "clojure.core-api.html\\#clojure.core/transient"], + \["tree-seq", "clojure.core-api.html\\#clojure.core/tree-seq"], + \["true?", "clojure.core-api.html\\#clojure.core/true?"], + \["type", "clojure.core-api.html\\#clojure.core/type"], + \["unchecked-add", "clojure.core-api.html\\#clojure.core/unchecked-add"], + \["unchecked-add-int", "clojure.core-api.html\\#clojure.core/unchecked-add-int"], + \["unchecked-byte", "clojure.core-api.html\\#clojure.core/unchecked-byte"], + \["unchecked-char", "clojure.core-api.html\\#clojure.core/unchecked-char"], + \["unchecked-dec", "clojure.core-api.html\\#clojure.core/unchecked-dec"], + \["unchecked-dec-int", "clojure.core-api.html\\#clojure.core/unchecked-dec-int"], + \["unchecked-divide-int", "clojure.core-api.html\\#clojure.core/unchecked-divide-int"], + \["unchecked-double", "clojure.core-api.html\\#clojure.core/unchecked-double"], + \["unchecked-float", "clojure.core-api.html\\#clojure.core/unchecked-float"], + \["unchecked-inc", "clojure.core-api.html\\#clojure.core/unchecked-inc"], + \["unchecked-inc-int", "clojure.core-api.html\\#clojure.core/unchecked-inc-int"], + \["unchecked-int", "clojure.core-api.html\\#clojure.core/unchecked-int"], + \["unchecked-long", "clojure.core-api.html\\#clojure.core/unchecked-long"], + \["unchecked-multiply", "clojure.core-api.html\\#clojure.core/unchecked-multiply"], + \["unchecked-multiply-int", "clojure.core-api.html\\#clojure.core/unchecked-multiply-int"], + \["unchecked-negate", "clojure.core-api.html\\#clojure.core/unchecked-negate"], + \["unchecked-negate-int", "clojure.core-api.html\\#clojure.core/unchecked-negate-int"], + \["unchecked-remainder-int", "clojure.core-api.html\\#clojure.core/unchecked-remainder-int"], + \["unchecked-short", "clojure.core-api.html\\#clojure.core/unchecked-short"], + \["unchecked-subtract", "clojure.core-api.html\\#clojure.core/unchecked-subtract"], + \["unchecked-subtract-int", "clojure.core-api.html\\#clojure.core/unchecked-subtract-int"], + \["underive", "clojure.core-api.html\\#clojure.core/underive"], + \["update-in", "clojure.core-api.html\\#clojure.core/update-in"], + \["update-proxy", "clojure.core-api.html\\#clojure.core/update-proxy"], + \["use", "clojure.core-api.html\\#clojure.core/use"], + \["val", "clojure.core-api.html\\#clojure.core/val"], + \["vals", "clojure.core-api.html\\#clojure.core/vals"], + \["var-get", "clojure.core-api.html\\#clojure.core/var-get"], + \["var-set", "clojure.core-api.html\\#clojure.core/var-set"], + \["var?", "clojure.core-api.html\\#clojure.core/var?"], + \["vary-meta", "clojure.core-api.html\\#clojure.core/vary-meta"], + \["vec", "clojure.core-api.html\\#clojure.core/vec"], + \["vector", "clojure.core-api.html\\#clojure.core/vector"], + \["vector-of", "clojure.core-api.html\\#clojure.core/vector-of"], + \["vector?", "clojure.core-api.html\\#clojure.core/vector?"], + \["when", "clojure.core-api.html\\#clojure.core/when"], + \["when-first", "clojure.core-api.html\\#clojure.core/when-first"], + \["when-let", "clojure.core-api.html\\#clojure.core/when-let"], + \["when-not", "clojure.core-api.html\\#clojure.core/when-not"], + \["while", "clojure.core-api.html\\#clojure.core/while"], + \["with-bindings", "clojure.core-api.html\\#clojure.core/with-bindings"], + \["with-bindings*", "clojure.core-api.html\\#clojure.core/with-bindings*"], + \["with-in-str", "clojure.core-api.html\\#clojure.core/with-in-str"], + \["with-local-vars", "clojure.core-api.html\\#clojure.core/with-local-vars"], + \["with-meta", "clojure.core-api.html\\#clojure.core/with-meta"], + \["with-open", "clojure.core-api.html\\#clojure.core/with-open"], + \["with-out-str", "clojure.core-api.html\\#clojure.core/with-out-str"], + \["with-precision", "clojure.core-api.html\\#clojure.core/with-precision"], + \["with-redefs", "clojure.core-api.html\\#clojure.core/with-redefs"], + \["with-redefs-fn", "clojure.core-api.html\\#clojure.core/with-redefs-fn"], + \["xml-seq", "clojure.core-api.html\\#clojure.core/xml-seq"], + \["zero?", "clojure.core-api.html\\#clojure.core/zero?"], + \["zipmap", "clojure.core-api.html\\#clojure.core/zipmap"], + \["Diff", "clojure.data-api.html\\#clojure.data/Diff"], + \["EqualityPartition", "clojure.data-api.html\\#clojure.data/EqualityPartition"], + \["diff", "clojure.data-api.html\\#clojure.data/diff"], + \["diff-similar", "clojure.data-api.html\\#clojure.data/diff-similar"], + \["equality-partition", "clojure.data-api.html\\#clojure.data/equality-partition"], + \["inspect", "clojure.inspector-api.html\\#clojure.inspector/inspect"], + \["inspect-table", "clojure.inspector-api.html\\#clojure.inspector/inspect-table"], + \["inspect-tree", "clojure.inspector-api.html\\#clojure.inspector/inspect-tree"], + \["browse-url", "clojure.java.browse-api.html\\#clojure.java.browse/browse-url"], + \["Coercions", "clojure.java.io-api.html\\#clojure.java.io/Coercions"], + \["IOFactory", "clojure.java.io-api.html\\#clojure.java.io/IOFactory"], + \["as-file", "clojure.java.io-api.html\\#clojure.java.io/as-file"], + \["as-relative-path", "clojure.java.io-api.html\\#clojure.java.io/as-relative-path"], + \["as-url", "clojure.java.io-api.html\\#clojure.java.io/as-url"], + \["copy", "clojure.java.io-api.html\\#clojure.java.io/copy"], + \["delete-file", "clojure.java.io-api.html\\#clojure.java.io/delete-file"], + \["file", "clojure.java.io-api.html\\#clojure.java.io/file"], + \["input-stream", "clojure.java.io-api.html\\#clojure.java.io/input-stream"], + \["make-input-stream", "clojure.java.io-api.html\\#clojure.java.io/make-input-stream"], + \["make-output-stream", "clojure.java.io-api.html\\#clojure.java.io/make-output-stream"], + \["make-parents", "clojure.java.io-api.html\\#clojure.java.io/make-parents"], + \["make-reader", "clojure.java.io-api.html\\#clojure.java.io/make-reader"], + \["make-writer", "clojure.java.io-api.html\\#clojure.java.io/make-writer"], + \["output-stream", "clojure.java.io-api.html\\#clojure.java.io/output-stream"], + \["reader", "clojure.java.io-api.html\\#clojure.java.io/reader"], + \["resource", "clojure.java.io-api.html\\#clojure.java.io/resource"], + \["writer", "clojure.java.io-api.html\\#clojure.java.io/writer"], + \["add-local-javadoc", "clojure.java.javadoc-api.html\\#clojure.java.javadoc/add-local-javadoc"], + \["add-remote-javadoc", "clojure.java.javadoc-api.html\\#clojure.java.javadoc/add-remote-javadoc"], + \["javadoc", "clojure.java.javadoc-api.html\\#clojure.java.javadoc/javadoc"], + \["sh", "clojure.java.shell-api.html\\#clojure.java.shell/sh"], + \["with-sh-dir", "clojure.java.shell-api.html\\#clojure.java.shell/with-sh-dir"], + \["with-sh-env", "clojure.java.shell-api.html\\#clojure.java.shell/with-sh-env"], + \["demunge", "clojure.main-api.html\\#clojure.main/demunge"], + \["load-script", "clojure.main-api.html\\#clojure.main/load-script"], + \["main", "clojure.main-api.html\\#clojure.main/main"], + \["repl", "clojure.main-api.html\\#clojure.main/repl"], + \["repl-caught", "clojure.main-api.html\\#clojure.main/repl-caught"], + \["repl-exception", "clojure.main-api.html\\#clojure.main/repl-exception"], + \["repl-prompt", "clojure.main-api.html\\#clojure.main/repl-prompt"], + \["repl-read", "clojure.main-api.html\\#clojure.main/repl-read"], + \["root-cause", "clojure.main-api.html\\#clojure.main/root-cause"], + \["skip-if-eol", "clojure.main-api.html\\#clojure.main/skip-if-eol"], + \["skip-whitespace", "clojure.main-api.html\\#clojure.main/skip-whitespace"], + \["stack-element-str", "clojure.main-api.html\\#clojure.main/stack-element-str"], + \["with-bindings", "clojure.main-api.html\\#clojure.main/with-bindings"], + \["*print-base*", "clojure.pprint-api.html\\#clojure.pprint/*print-base*"], + \["*print-miser-width*", "clojure.pprint-api.html\\#clojure.pprint/*print-miser-width*"], + \["*print-pprint-dispatch*", "clojure.pprint-api.html\\#clojure.pprint/*print-pprint-dispatch*"], + \["*print-pretty*", "clojure.pprint-api.html\\#clojure.pprint/*print-pretty*"], + \["*print-radix*", "clojure.pprint-api.html\\#clojure.pprint/*print-radix*"], + \["*print-right-margin*", "clojure.pprint-api.html\\#clojure.pprint/*print-right-margin*"], + \["*print-suppress-namespaces*", "clojure.pprint-api.html\\#clojure.pprint/*print-suppress-namespaces*"], + \["cl-format", "clojure.pprint-api.html\\#clojure.pprint/cl-format"], + \["formatter", "clojure.pprint-api.html\\#clojure.pprint/formatter"], + \["formatter-out", "clojure.pprint-api.html\\#clojure.pprint/formatter-out"], + \["fresh-line", "clojure.pprint-api.html\\#clojure.pprint/fresh-line"], + \["get-pretty-writer", "clojure.pprint-api.html\\#clojure.pprint/get-pretty-writer"], + \["pp", "clojure.pprint-api.html\\#clojure.pprint/pp"], + \["pprint", "clojure.pprint-api.html\\#clojure.pprint/pprint"], + \["pprint-indent", "clojure.pprint-api.html\\#clojure.pprint/pprint-indent"], + \["pprint-logical-block", "clojure.pprint-api.html\\#clojure.pprint/pprint-logical-block"], + \["pprint-newline", "clojure.pprint-api.html\\#clojure.pprint/pprint-newline"], + \["pprint-tab", "clojure.pprint-api.html\\#clojure.pprint/pprint-tab"], + \["print-length-loop", "clojure.pprint-api.html\\#clojure.pprint/print-length-loop"], + \["print-table", "clojure.pprint-api.html\\#clojure.pprint/print-table"], + \["set-pprint-dispatch", "clojure.pprint-api.html\\#clojure.pprint/set-pprint-dispatch"], + \["with-pprint-dispatch", "clojure.pprint-api.html\\#clojure.pprint/with-pprint-dispatch"], + \["write", "clojure.pprint-api.html\\#clojure.pprint/write"], + \["write-out", "clojure.pprint-api.html\\#clojure.pprint/write-out"], + \["TypeReference", "clojure.reflect-api.html\\#clojure.reflect/TypeReference"], + \["flag-descriptors", "clojure.reflect-api.html\\#clojure.reflect/flag-descriptors"], + \["reflect", "clojure.reflect-api.html\\#clojure.reflect/reflect"], + \["resolve-class", "clojure.reflect-api.html\\#clojure.reflect/resolve-class"], + \["type-reflect", "clojure.reflect-api.html\\#clojure.reflect/type-reflect"], + \["typename", "clojure.reflect-api.html\\#clojure.reflect/typename"], + \["apropos", "clojure.repl-api.html\\#clojure.repl/apropos"], + \["demunge", "clojure.repl-api.html\\#clojure.repl/demunge"], + \["dir", "clojure.repl-api.html\\#clojure.repl/dir"], + \["dir-fn", "clojure.repl-api.html\\#clojure.repl/dir-fn"], + \["doc", "clojure.repl-api.html\\#clojure.repl/doc"], + \["find-doc", "clojure.repl-api.html\\#clojure.repl/find-doc"], + \["pst", "clojure.repl-api.html\\#clojure.repl/pst"], + \["root-cause", "clojure.repl-api.html\\#clojure.repl/root-cause"], + \["set-break-handler!", "clojure.repl-api.html\\#clojure.repl/set-break-handler!"], + \["source", "clojure.repl-api.html\\#clojure.repl/source"], + \["source-fn", "clojure.repl-api.html\\#clojure.repl/source-fn"], + \["stack-element-str", "clojure.repl-api.html\\#clojure.repl/stack-element-str"], + \["thread-stopper", "clojure.repl-api.html\\#clojure.repl/thread-stopper"], + \["difference", "clojure.set-api.html\\#clojure.set/difference"], + \["index", "clojure.set-api.html\\#clojure.set/index"], + \["intersection", "clojure.set-api.html\\#clojure.set/intersection"], + \["join", "clojure.set-api.html\\#clojure.set/join"], + \["map-invert", "clojure.set-api.html\\#clojure.set/map-invert"], + \["project", "clojure.set-api.html\\#clojure.set/project"], + \["rename", "clojure.set-api.html\\#clojure.set/rename"], + \["rename-keys", "clojure.set-api.html\\#clojure.set/rename-keys"], + \["select", "clojure.set-api.html\\#clojure.set/select"], + \["subset?", "clojure.set-api.html\\#clojure.set/subset?"], + \["superset?", "clojure.set-api.html\\#clojure.set/superset?"], + \["union", "clojure.set-api.html\\#clojure.set/union"], + \["e", "clojure.stacktrace-api.html\\#clojure.stacktrace/e"], + \["print-cause-trace", "clojure.stacktrace-api.html\\#clojure.stacktrace/print-cause-trace"], + \["print-stack-trace", "clojure.stacktrace-api.html\\#clojure.stacktrace/print-stack-trace"], + \["print-throwable", "clojure.stacktrace-api.html\\#clojure.stacktrace/print-throwable"], + \["print-trace-element", "clojure.stacktrace-api.html\\#clojure.stacktrace/print-trace-element"], + \["root-cause", "clojure.stacktrace-api.html\\#clojure.stacktrace/root-cause"], + \["blank?", "clojure.string-api.html\\#clojure.string/blank?"], + \["capitalize", "clojure.string-api.html\\#clojure.string/capitalize"], + \["escape", "clojure.string-api.html\\#clojure.string/escape"], + \["join", "clojure.string-api.html\\#clojure.string/join"], + \["lower-case", "clojure.string-api.html\\#clojure.string/lower-case"], + \["replace", "clojure.string-api.html\\#clojure.string/replace"], + \["replace-first", "clojure.string-api.html\\#clojure.string/replace-first"], + \["reverse", "clojure.string-api.html\\#clojure.string/reverse"], + \["split", "clojure.string-api.html\\#clojure.string/split"], + \["split-lines", "clojure.string-api.html\\#clojure.string/split-lines"], + \["trim", "clojure.string-api.html\\#clojure.string/trim"], + \["trim-newline", "clojure.string-api.html\\#clojure.string/trim-newline"], + \["triml", "clojure.string-api.html\\#clojure.string/triml"], + \["trimr", "clojure.string-api.html\\#clojure.string/trimr"], + \["upper-case", "clojure.string-api.html\\#clojure.string/upper-case"], + \["apply-template", "clojure.template-api.html\\#clojure.template/apply-template"], + \["do-template", "clojure.template-api.html\\#clojure.template/do-template"], + \["*load-tests*", "clojure.test-api.html\\#clojure.test/*load-tests*"], + \["*stack-trace-depth*", "clojure.test-api.html\\#clojure.test/*stack-trace-depth*"], + \["are", "clojure.test-api.html\\#clojure.test/are"], + \["assert-any", "clojure.test-api.html\\#clojure.test/assert-any"], + \["assert-predicate", "clojure.test-api.html\\#clojure.test/assert-predicate"], + \["compose-fixtures", "clojure.test-api.html\\#clojure.test/compose-fixtures"], + \["deftest", "clojure.test-api.html\\#clojure.test/deftest"], + \["deftest-", "clojure.test-api.html\\#clojure.test/deftest-"], + \["do-report", "clojure.test-api.html\\#clojure.test/do-report"], + \["file-position", "clojure.test-api.html\\#clojure.test/file-position"], + \["function?", "clojure.test-api.html\\#clojure.test/function?"], + \["get-possibly-unbound-var", "clojure.test-api.html\\#clojure.test/get-possibly-unbound-var"], + \["inc-report-counter", "clojure.test-api.html\\#clojure.test/inc-report-counter"], + \["is", "clojure.test-api.html\\#clojure.test/is"], + \["join-fixtures", "clojure.test-api.html\\#clojure.test/join-fixtures"], + \["report", "clojure.test-api.html\\#clojure.test/report"], + \["run-all-tests", "clojure.test-api.html\\#clojure.test/run-all-tests"], + \["run-tests", "clojure.test-api.html\\#clojure.test/run-tests"], + \["set-test", "clojure.test-api.html\\#clojure.test/set-test"], + \["successful?", "clojure.test-api.html\\#clojure.test/successful?"], + \["test-all-vars", "clojure.test-api.html\\#clojure.test/test-all-vars"], + \["test-ns", "clojure.test-api.html\\#clojure.test/test-ns"], + \["test-var", "clojure.test-api.html\\#clojure.test/test-var"], + \["testing", "clojure.test-api.html\\#clojure.test/testing"], + \["testing-contexts-str", "clojure.test-api.html\\#clojure.test/testing-contexts-str"], + \["testing-vars-str", "clojure.test-api.html\\#clojure.test/testing-vars-str"], + \["try-expr", "clojure.test-api.html\\#clojure.test/try-expr"], + \["with-test", "clojure.test-api.html\\#clojure.test/with-test"], + \["with-test-out", "clojure.test-api.html\\#clojure.test/with-test-out"], + \["clojure.test.junit", "clojure.test-api.html\\#clojure.test.junit"], + \["with-junit-output", "clojure.test-api.html\\#clojure.test.junit/with-junit-output"], + \["clojure.test.tap", "clojure.test-api.html\\#clojure.test.tap"], + \["print-tap-diagnostic", "clojure.test-api.html\\#clojure.test.tap/print-tap-diagnostic"], + \["print-tap-fail", "clojure.test-api.html\\#clojure.test.tap/print-tap-fail"], + \["print-tap-pass", "clojure.test-api.html\\#clojure.test.tap/print-tap-pass"], + \["print-tap-plan", "clojure.test-api.html\\#clojure.test.tap/print-tap-plan"], + \["with-tap-output", "clojure.test-api.html\\#clojure.test.tap/with-tap-output"], + \["keywordize-keys", "clojure.walk-api.html\\#clojure.walk/keywordize-keys"], + \["macroexpand-all", "clojure.walk-api.html\\#clojure.walk/macroexpand-all"], + \["postwalk", "clojure.walk-api.html\\#clojure.walk/postwalk"], + \["postwalk-demo", "clojure.walk-api.html\\#clojure.walk/postwalk-demo"], + \["postwalk-replace", "clojure.walk-api.html\\#clojure.walk/postwalk-replace"], + \["prewalk", "clojure.walk-api.html\\#clojure.walk/prewalk"], + \["prewalk-demo", "clojure.walk-api.html\\#clojure.walk/prewalk-demo"], + \["prewalk-replace", "clojure.walk-api.html\\#clojure.walk/prewalk-replace"], + \["stringify-keys", "clojure.walk-api.html\\#clojure.walk/stringify-keys"], + \["walk", "clojure.walk-api.html\\#clojure.walk/walk"], + \["parse", "clojure.xml-api.html\\#clojure.xml/parse"], + \["append-child", "clojure.zip-api.html\\#clojure.zip/append-child"], + \["branch?", "clojure.zip-api.html\\#clojure.zip/branch?"], + \["children", "clojure.zip-api.html\\#clojure.zip/children"], + \["down", "clojure.zip-api.html\\#clojure.zip/down"], + \["edit", "clojure.zip-api.html\\#clojure.zip/edit"], + \["end?", "clojure.zip-api.html\\#clojure.zip/end?"], + \["insert-child", "clojure.zip-api.html\\#clojure.zip/insert-child"], + \["insert-left", "clojure.zip-api.html\\#clojure.zip/insert-left"], + \["insert-right", "clojure.zip-api.html\\#clojure.zip/insert-right"], + \["left", "clojure.zip-api.html\\#clojure.zip/left"], + \["leftmost", "clojure.zip-api.html\\#clojure.zip/leftmost"], + \["lefts", "clojure.zip-api.html\\#clojure.zip/lefts"], + \["make-node", "clojure.zip-api.html\\#clojure.zip/make-node"], + \["next", "clojure.zip-api.html\\#clojure.zip/next"], + \["node", "clojure.zip-api.html\\#clojure.zip/node"], + \["path", "clojure.zip-api.html\\#clojure.zip/path"], + \["prev", "clojure.zip-api.html\\#clojure.zip/prev"], + \["remove", "clojure.zip-api.html\\#clojure.zip/remove"], + \["replace", "clojure.zip-api.html\\#clojure.zip/replace"], + \["right", "clojure.zip-api.html\\#clojure.zip/right"], + \["rightmost", "clojure.zip-api.html\\#clojure.zip/rightmost"], + \["rights", "clojure.zip-api.html\\#clojure.zip/rights"], + \["root", "clojure.zip-api.html\\#clojure.zip/root"], + \["seq-zip", "clojure.zip-api.html\\#clojure.zip/seq-zip"], + \["up", "clojure.zip-api.html\\#clojure.zip/up"], + \["vector-zip", "clojure.zip-api.html\\#clojure.zip/vector-zip"], + \["xml-zip", "clojure.zip-api.html\\#clojure.zip/xml-zip"], + \["zipper", "clojure.zip-api.html\\#clojure.zip/zipper"]] +endif + diff --git a/vim/bundle/slimv/ftplugin/slimv-javadoc.vim b/vim/bundle/slimv/ftplugin/slimv-javadoc.vim new file mode 100644 index 0000000..91e1c28 --- /dev/null +++ b/vim/bundle/slimv/ftplugin/slimv-javadoc.vim @@ -0,0 +1,3820 @@ +" slimv-javadoc.vim: +" Clojure JavaDoc lookup support for Slimv +" Version: 0.5.0 +" Last Change: 14 Apr 2009 +" Maintainer: Tamas Kovacs +" License: This file is placed in the public domain. +" No warranty, express or implied. +" *** *** Use At-Your-Own-Risk! *** *** +" +" ===================================================================== +" +" Load Once: +if &cp || exists( 'g:slimv_javadoc_loaded' ) + finish +endif + +let g:slimv_javadoc_loaded = 1 + +" Root of the JavaDoc +if !exists( 'g:slimv_javadoc_root' ) + let g:slimv_javadoc_root = 'http://java.sun.com/javase/6/docs/api/' +endif + +if !exists( 'g:slimv_javadoc_db' ) + let g:slimv_javadoc_db = [ + \["AbstractAction", "javax/swing/AbstractAction.html"], + \["AbstractAnnotationValueVisitor6", "javax/lang/model/util/AbstractAnnotationValueVisitor6.html"], + \["AbstractBorder", "javax/swing/border/AbstractBorder.html"], + \["AbstractButton", "javax/swing/AbstractButton.html"], + \["AbstractCellEditor", "javax/swing/AbstractCellEditor.html"], + \["AbstractCollection", "java/util/AbstractCollection.html"], + \["AbstractColorChooserPanel", "javax/swing/colorchooser/AbstractColorChooserPanel.html"], + \["AbstractDocument", "javax/swing/text/AbstractDocument.html"], + \["AbstractDocument.AttributeContext", "javax/swing/text/AbstractDocument.AttributeContext.html"], + \["AbstractDocument.Content", "javax/swing/text/AbstractDocument.Content.html"], + \["AbstractDocument.ElementEdit", "javax/swing/text/AbstractDocument.ElementEdit.html"], + \["AbstractElementVisitor6", "javax/lang/model/util/AbstractElementVisitor6.html"], + \["AbstractExecutorService", "java/util/concurrent/AbstractExecutorService.html"], + \["AbstractInterruptibleChannel", "java/nio/channels/spi/AbstractInterruptibleChannel.html"], + \["AbstractLayoutCache", "javax/swing/tree/AbstractLayoutCache.html"], + \["AbstractLayoutCache.NodeDimensions", "javax/swing/tree/AbstractLayoutCache.NodeDimensions.html"], + \["AbstractList", "java/util/AbstractList.html"], + \["AbstractListModel", "javax/swing/AbstractListModel.html"], + \["AbstractMap", "java/util/AbstractMap.html"], + \["AbstractMap.SimpleEntry", "java/util/AbstractMap.SimpleEntry.html"], + \["AbstractMap.SimpleImmutableEntry", "java/util/AbstractMap.SimpleImmutableEntry.html"], + \["AbstractMarshallerImpl", "javax/xml/bind/helpers/AbstractMarshallerImpl.html"], + \["AbstractMethodError", "java/lang/AbstractMethodError.html"], + \["AbstractOwnableSynchronizer", "java/util/concurrent/locks/AbstractOwnableSynchronizer.html"], + \["AbstractPreferences", "java/util/prefs/AbstractPreferences.html"], + \["AbstractProcessor", "javax/annotation/processing/AbstractProcessor.html"], + \["AbstractQueue", "java/util/AbstractQueue.html"], + \["AbstractQueuedLongSynchronizer", "java/util/concurrent/locks/AbstractQueuedLongSynchronizer.html"], + \["AbstractQueuedSynchronizer", "java/util/concurrent/locks/AbstractQueuedSynchronizer.html"], + \["AbstractScriptEngine", "javax/script/AbstractScriptEngine.html"], + \["AbstractSelectableChannel", "java/nio/channels/spi/AbstractSelectableChannel.html"], + \["AbstractSelectionKey", "java/nio/channels/spi/AbstractSelectionKey.html"], + \["AbstractSelector", "java/nio/channels/spi/AbstractSelector.html"], + \["AbstractSequentialList", "java/util/AbstractSequentialList.html"], + \["AbstractSet", "java/util/AbstractSet.html"], + \["AbstractSpinnerModel", "javax/swing/AbstractSpinnerModel.html"], + \["AbstractTableModel", "javax/swing/table/AbstractTableModel.html"], + \["AbstractTypeVisitor6", "javax/lang/model/util/AbstractTypeVisitor6.html"], + \["AbstractUndoableEdit", "javax/swing/undo/AbstractUndoableEdit.html"], + \["AbstractUnmarshallerImpl", "javax/xml/bind/helpers/AbstractUnmarshallerImpl.html"], + \["AbstractWriter", "javax/swing/text/AbstractWriter.html"], + \["AccessControlContext", "java/security/AccessControlContext.html"], + \["AccessControlException", "java/security/AccessControlException.html"], + \["AccessController", "java/security/AccessController.html"], + \["AccessException", "java/rmi/AccessException.html"], + \["Accessible", "javax/accessibility/Accessible.html"], + \["AccessibleAction", "javax/accessibility/AccessibleAction.html"], + \["AccessibleAttributeSequence", "javax/accessibility/AccessibleAttributeSequence.html"], + \["AccessibleBundle", "javax/accessibility/AccessibleBundle.html"], + \["AccessibleComponent", "javax/accessibility/AccessibleComponent.html"], + \["AccessibleContext", "javax/accessibility/AccessibleContext.html"], + \["AccessibleEditableText", "javax/accessibility/AccessibleEditableText.html"], + \["AccessibleExtendedComponent", "javax/accessibility/AccessibleExtendedComponent.html"], + \["AccessibleExtendedTable", "javax/accessibility/AccessibleExtendedTable.html"], + \["AccessibleExtendedText", "javax/accessibility/AccessibleExtendedText.html"], + \["AccessibleHyperlink", "javax/accessibility/AccessibleHyperlink.html"], + \["AccessibleHypertext", "javax/accessibility/AccessibleHypertext.html"], + \["AccessibleIcon", "javax/accessibility/AccessibleIcon.html"], + \["AccessibleKeyBinding", "javax/accessibility/AccessibleKeyBinding.html"], + \["AccessibleObject", "java/lang/reflect/AccessibleObject.html"], + \["AccessibleRelation", "javax/accessibility/AccessibleRelation.html"], + \["AccessibleRelationSet", "javax/accessibility/AccessibleRelationSet.html"], + \["AccessibleResourceBundle", "javax/accessibility/AccessibleResourceBundle.html"], + \["AccessibleRole", "javax/accessibility/AccessibleRole.html"], + \["AccessibleSelection", "javax/accessibility/AccessibleSelection.html"], + \["AccessibleState", "javax/accessibility/AccessibleState.html"], + \["AccessibleStateSet", "javax/accessibility/AccessibleStateSet.html"], + \["AccessibleStreamable", "javax/accessibility/AccessibleStreamable.html"], + \["AccessibleTable", "javax/accessibility/AccessibleTable.html"], + \["AccessibleTableModelChange", "javax/accessibility/AccessibleTableModelChange.html"], + \["AccessibleText", "javax/accessibility/AccessibleText.html"], + \["AccessibleTextSequence", "javax/accessibility/AccessibleTextSequence.html"], + \["AccessibleValue", "javax/accessibility/AccessibleValue.html"], + \["AccountException", "javax/security/auth/login/AccountException.html"], + \["AccountExpiredException", "javax/security/auth/login/AccountExpiredException.html"], + \["AccountLockedException", "javax/security/auth/login/AccountLockedException.html"], + \["AccountNotFoundException", "javax/security/auth/login/AccountNotFoundException.html"], + \["Acl", "java/security/acl/Acl.html"], + \["AclEntry", "java/security/acl/AclEntry.html"], + \["AclNotFoundException", "java/security/acl/AclNotFoundException.html"], + \["Action", "javax/swing/Action.html"], + \["Action", "javax/xml/ws/Action.html"], + \["ActionEvent", "java/awt/event/ActionEvent.html"], + \["ActionListener", "java/awt/event/ActionListener.html"], + \["ActionMap", "javax/swing/ActionMap.html"], + \["ActionMapUIResource", "javax/swing/plaf/ActionMapUIResource.html"], + \["Activatable", "java/rmi/activation/Activatable.html"], + \["ActivateFailedException", "java/rmi/activation/ActivateFailedException.html"], + \["ActivationDataFlavor", "javax/activation/ActivationDataFlavor.html"], + \["ActivationDesc", "java/rmi/activation/ActivationDesc.html"], + \["ActivationException", "java/rmi/activation/ActivationException.html"], + \["ActivationGroup", "java/rmi/activation/ActivationGroup.html"], + \["ActivationGroup_Stub", "java/rmi/activation/ActivationGroup_Stub.html"], + \["ActivationGroupDesc", "java/rmi/activation/ActivationGroupDesc.html"], + \["ActivationGroupDesc.CommandEnvironment", "java/rmi/activation/ActivationGroupDesc.CommandEnvironment.html"], + \["ActivationGroupID", "java/rmi/activation/ActivationGroupID.html"], + \["ActivationID", "java/rmi/activation/ActivationID.html"], + \["ActivationInstantiator", "java/rmi/activation/ActivationInstantiator.html"], + \["ActivationMonitor", "java/rmi/activation/ActivationMonitor.html"], + \["ActivationSystem", "java/rmi/activation/ActivationSystem.html"], + \["Activator", "java/rmi/activation/Activator.html"], + \["ACTIVE", "org/omg/PortableInterceptor/ACTIVE.html"], + \["ActiveEvent", "java/awt/ActiveEvent.html"], + \["ACTIVITY_COMPLETED", "org/omg/CORBA/ACTIVITY_COMPLETED.html"], + \["ACTIVITY_REQUIRED", "org/omg/CORBA/ACTIVITY_REQUIRED.html"], + \["ActivityCompletedException", "javax/activity/ActivityCompletedException.html"], + \["ActivityRequiredException", "javax/activity/ActivityRequiredException.html"], + \["AdapterActivator", "org/omg/PortableServer/AdapterActivator.html"], + \["AdapterActivatorOperations", "org/omg/PortableServer/AdapterActivatorOperations.html"], + \["AdapterAlreadyExists", "org/omg/PortableServer/POAPackage/AdapterAlreadyExists.html"], + \["AdapterAlreadyExistsHelper", "org/omg/PortableServer/POAPackage/AdapterAlreadyExistsHelper.html"], + \["AdapterInactive", "org/omg/PortableServer/POAManagerPackage/AdapterInactive.html"], + \["AdapterInactiveHelper", "org/omg/PortableServer/POAManagerPackage/AdapterInactiveHelper.html"], + \["AdapterManagerIdHelper", "org/omg/PortableInterceptor/AdapterManagerIdHelper.html"], + \["AdapterNameHelper", "org/omg/PortableInterceptor/AdapterNameHelper.html"], + \["AdapterNonExistent", "org/omg/PortableServer/POAPackage/AdapterNonExistent.html"], + \["AdapterNonExistentHelper", "org/omg/PortableServer/POAPackage/AdapterNonExistentHelper.html"], + \["AdapterStateHelper", "org/omg/PortableInterceptor/AdapterStateHelper.html"], + \["AddressHelper", "org/omg/CosNaming/NamingContextExtPackage/AddressHelper.html"], + \["Addressing", "javax/xml/ws/soap/Addressing.html"], + \["AddressingFeature", "javax/xml/ws/soap/AddressingFeature.html"], + \["Adjustable", "java/awt/Adjustable.html"], + \["AdjustmentEvent", "java/awt/event/AdjustmentEvent.html"], + \["AdjustmentListener", "java/awt/event/AdjustmentListener.html"], + \["Adler32", "java/util/zip/Adler32.html"], + \["AffineTransform", "java/awt/geom/AffineTransform.html"], + \["AffineTransformOp", "java/awt/image/AffineTransformOp.html"], + \["AlgorithmMethod", "javax/xml/crypto/AlgorithmMethod.html"], + \["AlgorithmParameterGenerator", "java/security/AlgorithmParameterGenerator.html"], + \["AlgorithmParameterGeneratorSpi", "java/security/AlgorithmParameterGeneratorSpi.html"], + \["AlgorithmParameters", "java/security/AlgorithmParameters.html"], + \["AlgorithmParameterSpec", "java/security/spec/AlgorithmParameterSpec.html"], + \["AlgorithmParametersSpi", "java/security/AlgorithmParametersSpi.html"], + \["AllPermission", "java/security/AllPermission.html"], + \["AlphaComposite", "java/awt/AlphaComposite.html"], + \["AlreadyBound", "org/omg/CosNaming/NamingContextPackage/AlreadyBound.html"], + \["AlreadyBoundException", "java/rmi/AlreadyBoundException.html"], + \["AlreadyBoundHelper", "org/omg/CosNaming/NamingContextPackage/AlreadyBoundHelper.html"], + \["AlreadyBoundHolder", "org/omg/CosNaming/NamingContextPackage/AlreadyBoundHolder.html"], + \["AlreadyConnectedException", "java/nio/channels/AlreadyConnectedException.html"], + \["AncestorEvent", "javax/swing/event/AncestorEvent.html"], + \["AncestorListener", "javax/swing/event/AncestorListener.html"], + \["AnnotatedElement", "java/lang/reflect/AnnotatedElement.html"], + \["Annotation", "java/lang/annotation/Annotation.html"], + \["Annotation", "java/text/Annotation.html"], + \["AnnotationFormatError", "java/lang/annotation/AnnotationFormatError.html"], + \["AnnotationMirror", "javax/lang/model/element/AnnotationMirror.html"], + \["AnnotationTypeMismatchException", "java/lang/annotation/AnnotationTypeMismatchException.html"], + \["AnnotationValue", "javax/lang/model/element/AnnotationValue.html"], + \["AnnotationValueVisitor", "javax/lang/model/element/AnnotationValueVisitor.html"], + \["Any", "org/omg/CORBA/Any.html"], + \["AnyHolder", "org/omg/CORBA/AnyHolder.html"], + \["AnySeqHelper", "org/omg/CORBA/AnySeqHelper.html"], + \["AnySeqHelper", "org/omg/DynamicAny/AnySeqHelper.html"], + \["AnySeqHolder", "org/omg/CORBA/AnySeqHolder.html"], + \["AppConfigurationEntry", "javax/security/auth/login/AppConfigurationEntry.html"], + \["AppConfigurationEntry.LoginModuleControlFlag", "javax/security/auth/login/AppConfigurationEntry.LoginModuleControlFlag.html"], + \["Appendable", "java/lang/Appendable.html"], + \["Applet", "java/applet/Applet.html"], + \["AppletContext", "java/applet/AppletContext.html"], + \["AppletInitializer", "java/beans/AppletInitializer.html"], + \["AppletStub", "java/applet/AppletStub.html"], + \["ApplicationException", "org/omg/CORBA/portable/ApplicationException.html"], + \["Arc2D", "java/awt/geom/Arc2D.html"], + \["Arc2D.Double", "java/awt/geom/Arc2D.Double.html"], + \["Arc2D.Float", "java/awt/geom/Arc2D.Float.html"], + \["Area", "java/awt/geom/Area.html"], + \["AreaAveragingScaleFilter", "java/awt/image/AreaAveragingScaleFilter.html"], + \["ARG_IN", "org/omg/CORBA/ARG_IN.html"], + \["ARG_INOUT", "org/omg/CORBA/ARG_INOUT.html"], + \["ARG_OUT", "org/omg/CORBA/ARG_OUT.html"], + \["ArithmeticException", "java/lang/ArithmeticException.html"], + \["Array", "java/lang/reflect/Array.html"], + \["Array", "java/sql/Array.html"], + \["ArrayBlockingQueue", "java/util/concurrent/ArrayBlockingQueue.html"], + \["ArrayDeque", "java/util/ArrayDeque.html"], + \["ArrayIndexOutOfBoundsException", "java/lang/ArrayIndexOutOfBoundsException.html"], + \["ArrayList", "java/util/ArrayList.html"], + \["Arrays", "java/util/Arrays.html"], + \["ArrayStoreException", "java/lang/ArrayStoreException.html"], + \["ArrayType", "javax/lang/model/type/ArrayType.html"], + \["ArrayType", "javax/management/openmbean/ArrayType.html"], + \["AssertionError", "java/lang/AssertionError.html"], + \["AsyncBoxView", "javax/swing/text/AsyncBoxView.html"], + \["AsyncHandler", "javax/xml/ws/AsyncHandler.html"], + \["AsynchronousCloseException", "java/nio/channels/AsynchronousCloseException.html"], + \["AtomicBoolean", "java/util/concurrent/atomic/AtomicBoolean.html"], + \["AtomicInteger", "java/util/concurrent/atomic/AtomicInteger.html"], + \["AtomicIntegerArray", "java/util/concurrent/atomic/AtomicIntegerArray.html"], + \["AtomicIntegerFieldUpdater", "java/util/concurrent/atomic/AtomicIntegerFieldUpdater.html"], + \["AtomicLong", "java/util/concurrent/atomic/AtomicLong.html"], + \["AtomicLongArray", "java/util/concurrent/atomic/AtomicLongArray.html"], + \["AtomicLongFieldUpdater", "java/util/concurrent/atomic/AtomicLongFieldUpdater.html"], + \["AtomicMarkableReference", "java/util/concurrent/atomic/AtomicMarkableReference.html"], + \["AtomicReference", "java/util/concurrent/atomic/AtomicReference.html"], + \["AtomicReferenceArray", "java/util/concurrent/atomic/AtomicReferenceArray.html"], + \["AtomicReferenceFieldUpdater", "java/util/concurrent/atomic/AtomicReferenceFieldUpdater.html"], + \["AtomicStampedReference", "java/util/concurrent/atomic/AtomicStampedReference.html"], + \["AttachmentMarshaller", "javax/xml/bind/attachment/AttachmentMarshaller.html"], + \["AttachmentPart", "javax/xml/soap/AttachmentPart.html"], + \["AttachmentUnmarshaller", "javax/xml/bind/attachment/AttachmentUnmarshaller.html"], + \["Attr", "org/w3c/dom/Attr.html"], + \["Attribute", "javax/management/Attribute.html"], + \["Attribute", "javax/naming/directory/Attribute.html"], + \["Attribute", "javax/print/attribute/Attribute.html"], + \["Attribute", "javax/xml/stream/events/Attribute.html"], + \["AttributeChangeNotification", "javax/management/AttributeChangeNotification.html"], + \["AttributeChangeNotificationFilter", "javax/management/AttributeChangeNotificationFilter.html"], + \["AttributedCharacterIterator", "java/text/AttributedCharacterIterator.html"], + \["AttributedCharacterIterator.Attribute", "java/text/AttributedCharacterIterator.Attribute.html"], + \["AttributedString", "java/text/AttributedString.html"], + \["AttributeException", "javax/print/AttributeException.html"], + \["AttributeInUseException", "javax/naming/directory/AttributeInUseException.html"], + \["AttributeList", "javax/management/AttributeList.html"], + \["AttributeList", "javax/swing/text/html/parser/AttributeList.html"], + \["AttributeList", "org/xml/sax/AttributeList.html"], + \["AttributeListImpl", "org/xml/sax/helpers/AttributeListImpl.html"], + \["AttributeModificationException", "javax/naming/directory/AttributeModificationException.html"], + \["AttributeNotFoundException", "javax/management/AttributeNotFoundException.html"], + \["Attributes", "java/util/jar/Attributes.html"], + \["Attributes", "javax/naming/directory/Attributes.html"], + \["Attributes", "org/xml/sax/Attributes.html"], + \["Attributes.Name", "java/util/jar/Attributes.Name.html"], + \["Attributes2", "org/xml/sax/ext/Attributes2.html"], + \["Attributes2Impl", "org/xml/sax/ext/Attributes2Impl.html"], + \["AttributeSet", "javax/print/attribute/AttributeSet.html"], + \["AttributeSet", "javax/swing/text/AttributeSet.html"], + \["AttributeSet.CharacterAttribute", "javax/swing/text/AttributeSet.CharacterAttribute.html"], + \["AttributeSet.ColorAttribute", "javax/swing/text/AttributeSet.ColorAttribute.html"], + \["AttributeSet.FontAttribute", "javax/swing/text/AttributeSet.FontAttribute.html"], + \["AttributeSet.ParagraphAttribute", "javax/swing/text/AttributeSet.ParagraphAttribute.html"], + \["AttributeSetUtilities", "javax/print/attribute/AttributeSetUtilities.html"], + \["AttributesImpl", "org/xml/sax/helpers/AttributesImpl.html"], + \["AttributeValueExp", "javax/management/AttributeValueExp.html"], + \["AudioClip", "java/applet/AudioClip.html"], + \["AudioFileFormat", "javax/sound/sampled/AudioFileFormat.html"], + \["AudioFileFormat.Type", "javax/sound/sampled/AudioFileFormat.Type.html"], + \["AudioFileReader", "javax/sound/sampled/spi/AudioFileReader.html"], + \["AudioFileWriter", "javax/sound/sampled/spi/AudioFileWriter.html"], + \["AudioFormat", "javax/sound/sampled/AudioFormat.html"], + \["AudioFormat.Encoding", "javax/sound/sampled/AudioFormat.Encoding.html"], + \["AudioInputStream", "javax/sound/sampled/AudioInputStream.html"], + \["AudioPermission", "javax/sound/sampled/AudioPermission.html"], + \["AudioSystem", "javax/sound/sampled/AudioSystem.html"], + \["AuthenticationException", "javax/naming/AuthenticationException.html"], + \["AuthenticationException", "javax/security/sasl/AuthenticationException.html"], + \["AuthenticationNotSupportedException", "javax/naming/AuthenticationNotSupportedException.html"], + \["Authenticator", "java/net/Authenticator.html"], + \["Authenticator.RequestorType", "java/net/Authenticator.RequestorType.html"], + \["AuthorizeCallback", "javax/security/sasl/AuthorizeCallback.html"], + \["AuthPermission", "javax/security/auth/AuthPermission.html"], + \["AuthProvider", "java/security/AuthProvider.html"], + \["Autoscroll", "java/awt/dnd/Autoscroll.html"], + \["AWTError", "java/awt/AWTError.html"], + \["AWTEvent", "java/awt/AWTEvent.html"], + \["AWTEventListener", "java/awt/event/AWTEventListener.html"], + \["AWTEventListenerProxy", "java/awt/event/AWTEventListenerProxy.html"], + \["AWTEventMulticaster", "java/awt/AWTEventMulticaster.html"], + \["AWTException", "java/awt/AWTException.html"], + \["AWTKeyStroke", "java/awt/AWTKeyStroke.html"], + \["AWTPermission", "java/awt/AWTPermission.html"], + \["BackingStoreException", "java/util/prefs/BackingStoreException.html"], + \["BAD_CONTEXT", "org/omg/CORBA/BAD_CONTEXT.html"], + \["BAD_INV_ORDER", "org/omg/CORBA/BAD_INV_ORDER.html"], + \["BAD_OPERATION", "org/omg/CORBA/BAD_OPERATION.html"], + \["BAD_PARAM", "org/omg/CORBA/BAD_PARAM.html"], + \["BAD_POLICY", "org/omg/CORBA/BAD_POLICY.html"], + \["BAD_POLICY_TYPE", "org/omg/CORBA/BAD_POLICY_TYPE.html"], + \["BAD_POLICY_VALUE", "org/omg/CORBA/BAD_POLICY_VALUE.html"], + \["BAD_QOS", "org/omg/CORBA/BAD_QOS.html"], + \["BAD_TYPECODE", "org/omg/CORBA/BAD_TYPECODE.html"], + \["BadAttributeValueExpException", "javax/management/BadAttributeValueExpException.html"], + \["BadBinaryOpValueExpException", "javax/management/BadBinaryOpValueExpException.html"], + \["BadKind", "org/omg/CORBA/TypeCodePackage/BadKind.html"], + \["BadLocationException", "javax/swing/text/BadLocationException.html"], + \["BadPaddingException", "javax/crypto/BadPaddingException.html"], + \["BadStringOperationException", "javax/management/BadStringOperationException.html"], + \["BandCombineOp", "java/awt/image/BandCombineOp.html"], + \["BandedSampleModel", "java/awt/image/BandedSampleModel.html"], + \["BaseRowSet", "javax/sql/rowset/BaseRowSet.html"], + \["BasicArrowButton", "javax/swing/plaf/basic/BasicArrowButton.html"], + \["BasicAttribute", "javax/naming/directory/BasicAttribute.html"], + \["BasicAttributes", "javax/naming/directory/BasicAttributes.html"], + \["BasicBorders", "javax/swing/plaf/basic/BasicBorders.html"], + \["BasicBorders.ButtonBorder", "javax/swing/plaf/basic/BasicBorders.ButtonBorder.html"], + \["BasicBorders.FieldBorder", "javax/swing/plaf/basic/BasicBorders.FieldBorder.html"], + \["BasicBorders.MarginBorder", "javax/swing/plaf/basic/BasicBorders.MarginBorder.html"], + \["BasicBorders.MenuBarBorder", "javax/swing/plaf/basic/BasicBorders.MenuBarBorder.html"], + \["BasicBorders.RadioButtonBorder", "javax/swing/plaf/basic/BasicBorders.RadioButtonBorder.html"], + \["BasicBorders.RolloverButtonBorder", "javax/swing/plaf/basic/BasicBorders.RolloverButtonBorder.html"], + \["BasicBorders.SplitPaneBorder", "javax/swing/plaf/basic/BasicBorders.SplitPaneBorder.html"], + \["BasicBorders.ToggleButtonBorder", "javax/swing/plaf/basic/BasicBorders.ToggleButtonBorder.html"], + \["BasicButtonListener", "javax/swing/plaf/basic/BasicButtonListener.html"], + \["BasicButtonUI", "javax/swing/plaf/basic/BasicButtonUI.html"], + \["BasicCheckBoxMenuItemUI", "javax/swing/plaf/basic/BasicCheckBoxMenuItemUI.html"], + \["BasicCheckBoxUI", "javax/swing/plaf/basic/BasicCheckBoxUI.html"], + \["BasicColorChooserUI", "javax/swing/plaf/basic/BasicColorChooserUI.html"], + \["BasicComboBoxEditor", "javax/swing/plaf/basic/BasicComboBoxEditor.html"], + \["BasicComboBoxEditor.UIResource", "javax/swing/plaf/basic/BasicComboBoxEditor.UIResource.html"], + \["BasicComboBoxRenderer", "javax/swing/plaf/basic/BasicComboBoxRenderer.html"], + \["BasicComboBoxRenderer.UIResource", "javax/swing/plaf/basic/BasicComboBoxRenderer.UIResource.html"], + \["BasicComboBoxUI", "javax/swing/plaf/basic/BasicComboBoxUI.html"], + \["BasicComboPopup", "javax/swing/plaf/basic/BasicComboPopup.html"], + \["BasicControl", "javax/naming/ldap/BasicControl.html"], + \["BasicDesktopIconUI", "javax/swing/plaf/basic/BasicDesktopIconUI.html"], + \["BasicDesktopPaneUI", "javax/swing/plaf/basic/BasicDesktopPaneUI.html"], + \["BasicDirectoryModel", "javax/swing/plaf/basic/BasicDirectoryModel.html"], + \["BasicEditorPaneUI", "javax/swing/plaf/basic/BasicEditorPaneUI.html"], + \["BasicFileChooserUI", "javax/swing/plaf/basic/BasicFileChooserUI.html"], + \["BasicFormattedTextFieldUI", "javax/swing/plaf/basic/BasicFormattedTextFieldUI.html"], + \["BasicGraphicsUtils", "javax/swing/plaf/basic/BasicGraphicsUtils.html"], + \["BasicHTML", "javax/swing/plaf/basic/BasicHTML.html"], + \["BasicIconFactory", "javax/swing/plaf/basic/BasicIconFactory.html"], + \["BasicInternalFrameTitlePane", "javax/swing/plaf/basic/BasicInternalFrameTitlePane.html"], + \["BasicInternalFrameUI", "javax/swing/plaf/basic/BasicInternalFrameUI.html"], + \["BasicLabelUI", "javax/swing/plaf/basic/BasicLabelUI.html"], + \["BasicListUI", "javax/swing/plaf/basic/BasicListUI.html"], + \["BasicLookAndFeel", "javax/swing/plaf/basic/BasicLookAndFeel.html"], + \["BasicMenuBarUI", "javax/swing/plaf/basic/BasicMenuBarUI.html"], + \["BasicMenuItemUI", "javax/swing/plaf/basic/BasicMenuItemUI.html"], + \["BasicMenuUI", "javax/swing/plaf/basic/BasicMenuUI.html"], + \["BasicOptionPaneUI", "javax/swing/plaf/basic/BasicOptionPaneUI.html"], + \["BasicOptionPaneUI.ButtonAreaLayout", "javax/swing/plaf/basic/BasicOptionPaneUI.ButtonAreaLayout.html"], + \["BasicPanelUI", "javax/swing/plaf/basic/BasicPanelUI.html"], + \["BasicPasswordFieldUI", "javax/swing/plaf/basic/BasicPasswordFieldUI.html"], + \["BasicPermission", "java/security/BasicPermission.html"], + \["BasicPopupMenuSeparatorUI", "javax/swing/plaf/basic/BasicPopupMenuSeparatorUI.html"], + \["BasicPopupMenuUI", "javax/swing/plaf/basic/BasicPopupMenuUI.html"], + \["BasicProgressBarUI", "javax/swing/plaf/basic/BasicProgressBarUI.html"], + \["BasicRadioButtonMenuItemUI", "javax/swing/plaf/basic/BasicRadioButtonMenuItemUI.html"], + \["BasicRadioButtonUI", "javax/swing/plaf/basic/BasicRadioButtonUI.html"], + \["BasicRootPaneUI", "javax/swing/plaf/basic/BasicRootPaneUI.html"], + \["BasicScrollBarUI", "javax/swing/plaf/basic/BasicScrollBarUI.html"], + \["BasicScrollPaneUI", "javax/swing/plaf/basic/BasicScrollPaneUI.html"], + \["BasicSeparatorUI", "javax/swing/plaf/basic/BasicSeparatorUI.html"], + \["BasicSliderUI", "javax/swing/plaf/basic/BasicSliderUI.html"], + \["BasicSpinnerUI", "javax/swing/plaf/basic/BasicSpinnerUI.html"], + \["BasicSplitPaneDivider", "javax/swing/plaf/basic/BasicSplitPaneDivider.html"], + \["BasicSplitPaneUI", "javax/swing/plaf/basic/BasicSplitPaneUI.html"], + \["BasicStroke", "java/awt/BasicStroke.html"], + \["BasicTabbedPaneUI", "javax/swing/plaf/basic/BasicTabbedPaneUI.html"], + \["BasicTableHeaderUI", "javax/swing/plaf/basic/BasicTableHeaderUI.html"], + \["BasicTableUI", "javax/swing/plaf/basic/BasicTableUI.html"], + \["BasicTextAreaUI", "javax/swing/plaf/basic/BasicTextAreaUI.html"], + \["BasicTextFieldUI", "javax/swing/plaf/basic/BasicTextFieldUI.html"], + \["BasicTextPaneUI", "javax/swing/plaf/basic/BasicTextPaneUI.html"], + \["BasicTextUI", "javax/swing/plaf/basic/BasicTextUI.html"], + \["BasicTextUI.BasicCaret", "javax/swing/plaf/basic/BasicTextUI.BasicCaret.html"], + \["BasicTextUI.BasicHighlighter", "javax/swing/plaf/basic/BasicTextUI.BasicHighlighter.html"], + \["BasicToggleButtonUI", "javax/swing/plaf/basic/BasicToggleButtonUI.html"], + \["BasicToolBarSeparatorUI", "javax/swing/plaf/basic/BasicToolBarSeparatorUI.html"], + \["BasicToolBarUI", "javax/swing/plaf/basic/BasicToolBarUI.html"], + \["BasicToolTipUI", "javax/swing/plaf/basic/BasicToolTipUI.html"], + \["BasicTreeUI", "javax/swing/plaf/basic/BasicTreeUI.html"], + \["BasicViewportUI", "javax/swing/plaf/basic/BasicViewportUI.html"], + \["BatchUpdateException", "java/sql/BatchUpdateException.html"], + \["BeanContext", "java/beans/beancontext/BeanContext.html"], + \["BeanContextChild", "java/beans/beancontext/BeanContextChild.html"], + \["BeanContextChildComponentProxy", "java/beans/beancontext/BeanContextChildComponentProxy.html"], + \["BeanContextChildSupport", "java/beans/beancontext/BeanContextChildSupport.html"], + \["BeanContextContainerProxy", "java/beans/beancontext/BeanContextContainerProxy.html"], + \["BeanContextEvent", "java/beans/beancontext/BeanContextEvent.html"], + \["BeanContextMembershipEvent", "java/beans/beancontext/BeanContextMembershipEvent.html"], + \["BeanContextMembershipListener", "java/beans/beancontext/BeanContextMembershipListener.html"], + \["BeanContextProxy", "java/beans/beancontext/BeanContextProxy.html"], + \["BeanContextServiceAvailableEvent", "java/beans/beancontext/BeanContextServiceAvailableEvent.html"], + \["BeanContextServiceProvider", "java/beans/beancontext/BeanContextServiceProvider.html"], + \["BeanContextServiceProviderBeanInfo", "java/beans/beancontext/BeanContextServiceProviderBeanInfo.html"], + \["BeanContextServiceRevokedEvent", "java/beans/beancontext/BeanContextServiceRevokedEvent.html"], + \["BeanContextServiceRevokedListener", "java/beans/beancontext/BeanContextServiceRevokedListener.html"], + \["BeanContextServices", "java/beans/beancontext/BeanContextServices.html"], + \["BeanContextServicesListener", "java/beans/beancontext/BeanContextServicesListener.html"], + \["BeanContextServicesSupport", "java/beans/beancontext/BeanContextServicesSupport.html"], + \["BeanContextServicesSupport.BCSSServiceProvider", "java/beans/beancontext/BeanContextServicesSupport.BCSSServiceProvider.html"], + \["BeanContextSupport", "java/beans/beancontext/BeanContextSupport.html"], + \["BeanContextSupport.BCSIterator", "java/beans/beancontext/BeanContextSupport.BCSIterator.html"], + \["BeanDescriptor", "java/beans/BeanDescriptor.html"], + \["BeanInfo", "java/beans/BeanInfo.html"], + \["Beans", "java/beans/Beans.html"], + \["BevelBorder", "javax/swing/border/BevelBorder.html"], + \["Bidi", "java/text/Bidi.html"], + \["BigDecimal", "java/math/BigDecimal.html"], + \["BigInteger", "java/math/BigInteger.html"], + \["BinaryRefAddr", "javax/naming/BinaryRefAddr.html"], + \["Binder", "javax/xml/bind/Binder.html"], + \["BindException", "java/net/BindException.html"], + \["Binding", "javax/naming/Binding.html"], + \["Binding", "javax/xml/ws/Binding.html"], + \["Binding", "org/omg/CosNaming/Binding.html"], + \["BindingHelper", "org/omg/CosNaming/BindingHelper.html"], + \["BindingHolder", "org/omg/CosNaming/BindingHolder.html"], + \["BindingIterator", "org/omg/CosNaming/BindingIterator.html"], + \["BindingIteratorHelper", "org/omg/CosNaming/BindingIteratorHelper.html"], + \["BindingIteratorHolder", "org/omg/CosNaming/BindingIteratorHolder.html"], + \["BindingIteratorOperations", "org/omg/CosNaming/BindingIteratorOperations.html"], + \["BindingIteratorPOA", "org/omg/CosNaming/BindingIteratorPOA.html"], + \["BindingListHelper", "org/omg/CosNaming/BindingListHelper.html"], + \["BindingListHolder", "org/omg/CosNaming/BindingListHolder.html"], + \["BindingProvider", "javax/xml/ws/BindingProvider.html"], + \["Bindings", "javax/script/Bindings.html"], + \["BindingType", "javax/xml/ws/BindingType.html"], + \["BindingType", "org/omg/CosNaming/BindingType.html"], + \["BindingTypeHelper", "org/omg/CosNaming/BindingTypeHelper.html"], + \["BindingTypeHolder", "org/omg/CosNaming/BindingTypeHolder.html"], + \["BitSet", "java/util/BitSet.html"], + \["Blob", "java/sql/Blob.html"], + \["BlockingDeque", "java/util/concurrent/BlockingDeque.html"], + \["BlockingQueue", "java/util/concurrent/BlockingQueue.html"], + \["BlockView", "javax/swing/text/html/BlockView.html"], + \["BMPImageWriteParam", "javax/imageio/plugins/bmp/BMPImageWriteParam.html"], + \["Book", "java/awt/print/Book.html"], + \["Boolean", "java/lang/Boolean.html"], + \["BooleanControl", "javax/sound/sampled/BooleanControl.html"], + \["BooleanControl.Type", "javax/sound/sampled/BooleanControl.Type.html"], + \["BooleanHolder", "org/omg/CORBA/BooleanHolder.html"], + \["BooleanSeqHelper", "org/omg/CORBA/BooleanSeqHelper.html"], + \["BooleanSeqHolder", "org/omg/CORBA/BooleanSeqHolder.html"], + \["Border", "javax/swing/border/Border.html"], + \["BorderFactory", "javax/swing/BorderFactory.html"], + \["BorderLayout", "java/awt/BorderLayout.html"], + \["BorderUIResource", "javax/swing/plaf/BorderUIResource.html"], + \["BorderUIResource.BevelBorderUIResource", "javax/swing/plaf/BorderUIResource.BevelBorderUIResource.html"], + \["BorderUIResource.CompoundBorderUIResource", "javax/swing/plaf/BorderUIResource.CompoundBorderUIResource.html"], + \["BorderUIResource.EmptyBorderUIResource", "javax/swing/plaf/BorderUIResource.EmptyBorderUIResource.html"], + \["BorderUIResource.EtchedBorderUIResource", "javax/swing/plaf/BorderUIResource.EtchedBorderUIResource.html"], + \["BorderUIResource.LineBorderUIResource", "javax/swing/plaf/BorderUIResource.LineBorderUIResource.html"], + \["BorderUIResource.MatteBorderUIResource", "javax/swing/plaf/BorderUIResource.MatteBorderUIResource.html"], + \["BorderUIResource.TitledBorderUIResource", "javax/swing/plaf/BorderUIResource.TitledBorderUIResource.html"], + \["BoundedRangeModel", "javax/swing/BoundedRangeModel.html"], + \["Bounds", "org/omg/CORBA/Bounds.html"], + \["Bounds", "org/omg/CORBA/TypeCodePackage/Bounds.html"], + \["Box", "javax/swing/Box.html"], + \["Box.Filler", "javax/swing/Box.Filler.html"], + \["BoxedValueHelper", "org/omg/CORBA/portable/BoxedValueHelper.html"], + \["BoxLayout", "javax/swing/BoxLayout.html"], + \["BoxView", "javax/swing/text/BoxView.html"], + \["BreakIterator", "java/text/BreakIterator.html"], + \["BreakIteratorProvider", "java/text/spi/BreakIteratorProvider.html"], + \["BrokenBarrierException", "java/util/concurrent/BrokenBarrierException.html"], + \["Buffer", "java/nio/Buffer.html"], + \["BufferCapabilities", "java/awt/BufferCapabilities.html"], + \["BufferCapabilities.FlipContents", "java/awt/BufferCapabilities.FlipContents.html"], + \["BufferedImage", "java/awt/image/BufferedImage.html"], + \["BufferedImageFilter", "java/awt/image/BufferedImageFilter.html"], + \["BufferedImageOp", "java/awt/image/BufferedImageOp.html"], + \["BufferedInputStream", "java/io/BufferedInputStream.html"], + \["BufferedOutputStream", "java/io/BufferedOutputStream.html"], + \["BufferedReader", "java/io/BufferedReader.html"], + \["BufferedWriter", "java/io/BufferedWriter.html"], + \["BufferOverflowException", "java/nio/BufferOverflowException.html"], + \["BufferStrategy", "java/awt/image/BufferStrategy.html"], + \["BufferUnderflowException", "java/nio/BufferUnderflowException.html"], + \["Button", "java/awt/Button.html"], + \["ButtonGroup", "javax/swing/ButtonGroup.html"], + \["ButtonModel", "javax/swing/ButtonModel.html"], + \["ButtonUI", "javax/swing/plaf/ButtonUI.html"], + \["Byte", "java/lang/Byte.html"], + \["ByteArrayInputStream", "java/io/ByteArrayInputStream.html"], + \["ByteArrayOutputStream", "java/io/ByteArrayOutputStream.html"], + \["ByteBuffer", "java/nio/ByteBuffer.html"], + \["ByteChannel", "java/nio/channels/ByteChannel.html"], + \["ByteHolder", "org/omg/CORBA/ByteHolder.html"], + \["ByteLookupTable", "java/awt/image/ByteLookupTable.html"], + \["ByteOrder", "java/nio/ByteOrder.html"], + \["C14NMethodParameterSpec", "javax/xml/crypto/dsig/spec/C14NMethodParameterSpec.html"], + \["CachedRowSet", "javax/sql/rowset/CachedRowSet.html"], + \["CacheRequest", "java/net/CacheRequest.html"], + \["CacheResponse", "java/net/CacheResponse.html"], + \["Calendar", "java/util/Calendar.html"], + \["Callable", "java/util/concurrent/Callable.html"], + \["CallableStatement", "java/sql/CallableStatement.html"], + \["Callback", "javax/security/auth/callback/Callback.html"], + \["CallbackHandler", "javax/security/auth/callback/CallbackHandler.html"], + \["CancelablePrintJob", "javax/print/CancelablePrintJob.html"], + \["CancellationException", "java/util/concurrent/CancellationException.html"], + \["CancelledKeyException", "java/nio/channels/CancelledKeyException.html"], + \["CannotProceed", "org/omg/CosNaming/NamingContextPackage/CannotProceed.html"], + \["CannotProceedException", "javax/naming/CannotProceedException.html"], + \["CannotProceedHelper", "org/omg/CosNaming/NamingContextPackage/CannotProceedHelper.html"], + \["CannotProceedHolder", "org/omg/CosNaming/NamingContextPackage/CannotProceedHolder.html"], + \["CannotRedoException", "javax/swing/undo/CannotRedoException.html"], + \["CannotUndoException", "javax/swing/undo/CannotUndoException.html"], + \["CanonicalizationMethod", "javax/xml/crypto/dsig/CanonicalizationMethod.html"], + \["Canvas", "java/awt/Canvas.html"], + \["CardLayout", "java/awt/CardLayout.html"], + \["Caret", "javax/swing/text/Caret.html"], + \["CaretEvent", "javax/swing/event/CaretEvent.html"], + \["CaretListener", "javax/swing/event/CaretListener.html"], + \["CDATASection", "org/w3c/dom/CDATASection.html"], + \["CellEditor", "javax/swing/CellEditor.html"], + \["CellEditorListener", "javax/swing/event/CellEditorListener.html"], + \["CellRendererPane", "javax/swing/CellRendererPane.html"], + \["Certificate", "java/security/cert/Certificate.html"], + \["Certificate", "java/security/Certificate.html"], + \["Certificate", "javax/security/cert/Certificate.html"], + \["Certificate.CertificateRep", "java/security/cert/Certificate.CertificateRep.html"], + \["CertificateEncodingException", "java/security/cert/CertificateEncodingException.html"], + \["CertificateEncodingException", "javax/security/cert/CertificateEncodingException.html"], + \["CertificateException", "java/security/cert/CertificateException.html"], + \["CertificateException", "javax/security/cert/CertificateException.html"], + \["CertificateExpiredException", "java/security/cert/CertificateExpiredException.html"], + \["CertificateExpiredException", "javax/security/cert/CertificateExpiredException.html"], + \["CertificateFactory", "java/security/cert/CertificateFactory.html"], + \["CertificateFactorySpi", "java/security/cert/CertificateFactorySpi.html"], + \["CertificateNotYetValidException", "java/security/cert/CertificateNotYetValidException.html"], + \["CertificateNotYetValidException", "javax/security/cert/CertificateNotYetValidException.html"], + \["CertificateParsingException", "java/security/cert/CertificateParsingException.html"], + \["CertificateParsingException", "javax/security/cert/CertificateParsingException.html"], + \["CertPath", "java/security/cert/CertPath.html"], + \["CertPath.CertPathRep", "java/security/cert/CertPath.CertPathRep.html"], + \["CertPathBuilder", "java/security/cert/CertPathBuilder.html"], + \["CertPathBuilderException", "java/security/cert/CertPathBuilderException.html"], + \["CertPathBuilderResult", "java/security/cert/CertPathBuilderResult.html"], + \["CertPathBuilderSpi", "java/security/cert/CertPathBuilderSpi.html"], + \["CertPathParameters", "java/security/cert/CertPathParameters.html"], + \["CertPathTrustManagerParameters", "javax/net/ssl/CertPathTrustManagerParameters.html"], + \["CertPathValidator", "java/security/cert/CertPathValidator.html"], + \["CertPathValidatorException", "java/security/cert/CertPathValidatorException.html"], + \["CertPathValidatorResult", "java/security/cert/CertPathValidatorResult.html"], + \["CertPathValidatorSpi", "java/security/cert/CertPathValidatorSpi.html"], + \["CertSelector", "java/security/cert/CertSelector.html"], + \["CertStore", "java/security/cert/CertStore.html"], + \["CertStoreException", "java/security/cert/CertStoreException.html"], + \["CertStoreParameters", "java/security/cert/CertStoreParameters.html"], + \["CertStoreSpi", "java/security/cert/CertStoreSpi.html"], + \["ChangedCharSetException", "javax/swing/text/ChangedCharSetException.html"], + \["ChangeEvent", "javax/swing/event/ChangeEvent.html"], + \["ChangeListener", "javax/swing/event/ChangeListener.html"], + \["Channel", "java/nio/channels/Channel.html"], + \["ChannelBinding", "org/ietf/jgss/ChannelBinding.html"], + \["Channels", "java/nio/channels/Channels.html"], + \["Character", "java/lang/Character.html"], + \["Character.Subset", "java/lang/Character.Subset.html"], + \["Character.UnicodeBlock", "java/lang/Character.UnicodeBlock.html"], + \["CharacterCodingException", "java/nio/charset/CharacterCodingException.html"], + \["CharacterData", "org/w3c/dom/CharacterData.html"], + \["CharacterIterator", "java/text/CharacterIterator.html"], + \["Characters", "javax/xml/stream/events/Characters.html"], + \["CharArrayReader", "java/io/CharArrayReader.html"], + \["CharArrayWriter", "java/io/CharArrayWriter.html"], + \["CharBuffer", "java/nio/CharBuffer.html"], + \["CharConversionException", "java/io/CharConversionException.html"], + \["CharHolder", "org/omg/CORBA/CharHolder.html"], + \["CharSeqHelper", "org/omg/CORBA/CharSeqHelper.html"], + \["CharSeqHolder", "org/omg/CORBA/CharSeqHolder.html"], + \["CharSequence", "java/lang/CharSequence.html"], + \["Charset", "java/nio/charset/Charset.html"], + \["CharsetDecoder", "java/nio/charset/CharsetDecoder.html"], + \["CharsetEncoder", "java/nio/charset/CharsetEncoder.html"], + \["CharsetProvider", "java/nio/charset/spi/CharsetProvider.html"], + \["Checkbox", "java/awt/Checkbox.html"], + \["CheckboxGroup", "java/awt/CheckboxGroup.html"], + \["CheckboxMenuItem", "java/awt/CheckboxMenuItem.html"], + \["CheckedInputStream", "java/util/zip/CheckedInputStream.html"], + \["CheckedOutputStream", "java/util/zip/CheckedOutputStream.html"], + \["Checksum", "java/util/zip/Checksum.html"], + \["Choice", "java/awt/Choice.html"], + \["ChoiceCallback", "javax/security/auth/callback/ChoiceCallback.html"], + \["ChoiceFormat", "java/text/ChoiceFormat.html"], + \["Chromaticity", "javax/print/attribute/standard/Chromaticity.html"], + \["Cipher", "javax/crypto/Cipher.html"], + \["CipherInputStream", "javax/crypto/CipherInputStream.html"], + \["CipherOutputStream", "javax/crypto/CipherOutputStream.html"], + \["CipherSpi", "javax/crypto/CipherSpi.html"], + \["Class", "java/lang/Class.html"], + \["ClassCastException", "java/lang/ClassCastException.html"], + \["ClassCircularityError", "java/lang/ClassCircularityError.html"], + \["ClassDefinition", "java/lang/instrument/ClassDefinition.html"], + \["ClassDesc", "javax/rmi/CORBA/ClassDesc.html"], + \["ClassFileTransformer", "java/lang/instrument/ClassFileTransformer.html"], + \["ClassFormatError", "java/lang/ClassFormatError.html"], + \["ClassLoader", "java/lang/ClassLoader.html"], + \["ClassLoaderRepository", "javax/management/loading/ClassLoaderRepository.html"], + \["ClassLoadingMXBean", "java/lang/management/ClassLoadingMXBean.html"], + \["ClassNotFoundException", "java/lang/ClassNotFoundException.html"], + \["ClientInfoStatus", "java/sql/ClientInfoStatus.html"], + \["ClientRequestInfo", "org/omg/PortableInterceptor/ClientRequestInfo.html"], + \["ClientRequestInfoOperations", "org/omg/PortableInterceptor/ClientRequestInfoOperations.html"], + \["ClientRequestInterceptor", "org/omg/PortableInterceptor/ClientRequestInterceptor.html"], + \["ClientRequestInterceptorOperations", "org/omg/PortableInterceptor/ClientRequestInterceptorOperations.html"], + \["Clip", "javax/sound/sampled/Clip.html"], + \["Clipboard", "java/awt/datatransfer/Clipboard.html"], + \["ClipboardOwner", "java/awt/datatransfer/ClipboardOwner.html"], + \["Clob", "java/sql/Clob.html"], + \["Cloneable", "java/lang/Cloneable.html"], + \["CloneNotSupportedException", "java/lang/CloneNotSupportedException.html"], + \["Closeable", "java/io/Closeable.html"], + \["ClosedByInterruptException", "java/nio/channels/ClosedByInterruptException.html"], + \["ClosedChannelException", "java/nio/channels/ClosedChannelException.html"], + \["ClosedSelectorException", "java/nio/channels/ClosedSelectorException.html"], + \["CMMException", "java/awt/color/CMMException.html"], + \["Codec", "org/omg/IOP/Codec.html"], + \["CodecFactory", "org/omg/IOP/CodecFactory.html"], + \["CodecFactoryHelper", "org/omg/IOP/CodecFactoryHelper.html"], + \["CodecFactoryOperations", "org/omg/IOP/CodecFactoryOperations.html"], + \["CodecOperations", "org/omg/IOP/CodecOperations.html"], + \["CoderMalfunctionError", "java/nio/charset/CoderMalfunctionError.html"], + \["CoderResult", "java/nio/charset/CoderResult.html"], + \["CODESET_INCOMPATIBLE", "org/omg/CORBA/CODESET_INCOMPATIBLE.html"], + \["CodeSets", "org/omg/IOP/CodeSets.html"], + \["CodeSigner", "java/security/CodeSigner.html"], + \["CodeSource", "java/security/CodeSource.html"], + \["CodingErrorAction", "java/nio/charset/CodingErrorAction.html"], + \["CollapsedStringAdapter", "javax/xml/bind/annotation/adapters/CollapsedStringAdapter.html"], + \["CollationElementIterator", "java/text/CollationElementIterator.html"], + \["CollationKey", "java/text/CollationKey.html"], + \["Collator", "java/text/Collator.html"], + \["CollatorProvider", "java/text/spi/CollatorProvider.html"], + \["Collection", "java/util/Collection.html"], + \["CollectionCertStoreParameters", "java/security/cert/CollectionCertStoreParameters.html"], + \["Collections", "java/util/Collections.html"], + \["Color", "java/awt/Color.html"], + \["ColorChooserComponentFactory", "javax/swing/colorchooser/ColorChooserComponentFactory.html"], + \["ColorChooserUI", "javax/swing/plaf/ColorChooserUI.html"], + \["ColorConvertOp", "java/awt/image/ColorConvertOp.html"], + \["ColorModel", "java/awt/image/ColorModel.html"], + \["ColorSelectionModel", "javax/swing/colorchooser/ColorSelectionModel.html"], + \["ColorSpace", "java/awt/color/ColorSpace.html"], + \["ColorSupported", "javax/print/attribute/standard/ColorSupported.html"], + \["ColorType", "javax/swing/plaf/synth/ColorType.html"], + \["ColorUIResource", "javax/swing/plaf/ColorUIResource.html"], + \["ComboBoxEditor", "javax/swing/ComboBoxEditor.html"], + \["ComboBoxModel", "javax/swing/ComboBoxModel.html"], + \["ComboBoxUI", "javax/swing/plaf/ComboBoxUI.html"], + \["ComboPopup", "javax/swing/plaf/basic/ComboPopup.html"], + \["COMM_FAILURE", "org/omg/CORBA/COMM_FAILURE.html"], + \["CommandInfo", "javax/activation/CommandInfo.html"], + \["CommandMap", "javax/activation/CommandMap.html"], + \["CommandObject", "javax/activation/CommandObject.html"], + \["Comment", "javax/xml/stream/events/Comment.html"], + \["Comment", "org/w3c/dom/Comment.html"], + \["CommonDataSource", "javax/sql/CommonDataSource.html"], + \["CommunicationException", "javax/naming/CommunicationException.html"], + \["Comparable", "java/lang/Comparable.html"], + \["Comparator", "java/util/Comparator.html"], + \["Compilable", "javax/script/Compilable.html"], + \["CompilationMXBean", "java/lang/management/CompilationMXBean.html"], + \["CompiledScript", "javax/script/CompiledScript.html"], + \["Compiler", "java/lang/Compiler.html"], + \["Completion", "javax/annotation/processing/Completion.html"], + \["Completions", "javax/annotation/processing/Completions.html"], + \["CompletionService", "java/util/concurrent/CompletionService.html"], + \["CompletionStatus", "org/omg/CORBA/CompletionStatus.html"], + \["CompletionStatusHelper", "org/omg/CORBA/CompletionStatusHelper.html"], + \["Component", "java/awt/Component.html"], + \["Component.BaselineResizeBehavior", "java/awt/Component.BaselineResizeBehavior.html"], + \["ComponentAdapter", "java/awt/event/ComponentAdapter.html"], + \["ComponentColorModel", "java/awt/image/ComponentColorModel.html"], + \["ComponentEvent", "java/awt/event/ComponentEvent.html"], + \["ComponentIdHelper", "org/omg/IOP/ComponentIdHelper.html"], + \["ComponentInputMap", "javax/swing/ComponentInputMap.html"], + \["ComponentInputMapUIResource", "javax/swing/plaf/ComponentInputMapUIResource.html"], + \["ComponentListener", "java/awt/event/ComponentListener.html"], + \["ComponentOrientation", "java/awt/ComponentOrientation.html"], + \["ComponentSampleModel", "java/awt/image/ComponentSampleModel.html"], + \["ComponentUI", "javax/swing/plaf/ComponentUI.html"], + \["ComponentView", "javax/swing/text/ComponentView.html"], + \["Composite", "java/awt/Composite.html"], + \["CompositeContext", "java/awt/CompositeContext.html"], + \["CompositeData", "javax/management/openmbean/CompositeData.html"], + \["CompositeDataInvocationHandler", "javax/management/openmbean/CompositeDataInvocationHandler.html"], + \["CompositeDataSupport", "javax/management/openmbean/CompositeDataSupport.html"], + \["CompositeDataView", "javax/management/openmbean/CompositeDataView.html"], + \["CompositeName", "javax/naming/CompositeName.html"], + \["CompositeType", "javax/management/openmbean/CompositeType.html"], + \["CompositeView", "javax/swing/text/CompositeView.html"], + \["CompoundBorder", "javax/swing/border/CompoundBorder.html"], + \["CompoundControl", "javax/sound/sampled/CompoundControl.html"], + \["CompoundControl.Type", "javax/sound/sampled/CompoundControl.Type.html"], + \["CompoundEdit", "javax/swing/undo/CompoundEdit.html"], + \["CompoundName", "javax/naming/CompoundName.html"], + \["Compression", "javax/print/attribute/standard/Compression.html"], + \["ConcurrentHashMap", "java/util/concurrent/ConcurrentHashMap.html"], + \["ConcurrentLinkedQueue", "java/util/concurrent/ConcurrentLinkedQueue.html"], + \["ConcurrentMap", "java/util/concurrent/ConcurrentMap.html"], + \["ConcurrentModificationException", "java/util/ConcurrentModificationException.html"], + \["ConcurrentNavigableMap", "java/util/concurrent/ConcurrentNavigableMap.html"], + \["ConcurrentSkipListMap", "java/util/concurrent/ConcurrentSkipListMap.html"], + \["ConcurrentSkipListSet", "java/util/concurrent/ConcurrentSkipListSet.html"], + \["Condition", "java/util/concurrent/locks/Condition.html"], + \["Configuration", "javax/security/auth/login/Configuration.html"], + \["Configuration.Parameters", "javax/security/auth/login/Configuration.Parameters.html"], + \["ConfigurationException", "javax/naming/ConfigurationException.html"], + \["ConfigurationSpi", "javax/security/auth/login/ConfigurationSpi.html"], + \["ConfirmationCallback", "javax/security/auth/callback/ConfirmationCallback.html"], + \["ConnectException", "java/net/ConnectException.html"], + \["ConnectException", "java/rmi/ConnectException.html"], + \["ConnectIOException", "java/rmi/ConnectIOException.html"], + \["Connection", "java/sql/Connection.html"], + \["ConnectionEvent", "javax/sql/ConnectionEvent.html"], + \["ConnectionEventListener", "javax/sql/ConnectionEventListener.html"], + \["ConnectionPendingException", "java/nio/channels/ConnectionPendingException.html"], + \["ConnectionPoolDataSource", "javax/sql/ConnectionPoolDataSource.html"], + \["Console", "java/io/Console.html"], + \["ConsoleHandler", "java/util/logging/ConsoleHandler.html"], + \["Constructor", "java/lang/reflect/Constructor.html"], + \["ConstructorProperties", "java/beans/ConstructorProperties.html"], + \["Container", "java/awt/Container.html"], + \["ContainerAdapter", "java/awt/event/ContainerAdapter.html"], + \["ContainerEvent", "java/awt/event/ContainerEvent.html"], + \["ContainerListener", "java/awt/event/ContainerListener.html"], + \["ContainerOrderFocusTraversalPolicy", "java/awt/ContainerOrderFocusTraversalPolicy.html"], + \["ContentHandler", "java/net/ContentHandler.html"], + \["ContentHandler", "org/xml/sax/ContentHandler.html"], + \["ContentHandlerFactory", "java/net/ContentHandlerFactory.html"], + \["ContentModel", "javax/swing/text/html/parser/ContentModel.html"], + \["Context", "javax/naming/Context.html"], + \["Context", "org/omg/CORBA/Context.html"], + \["ContextList", "org/omg/CORBA/ContextList.html"], + \["ContextNotEmptyException", "javax/naming/ContextNotEmptyException.html"], + \["ContextualRenderedImageFactory", "java/awt/image/renderable/ContextualRenderedImageFactory.html"], + \["Control", "javax/naming/ldap/Control.html"], + \["Control", "javax/sound/sampled/Control.html"], + \["Control.Type", "javax/sound/sampled/Control.Type.html"], + \["ControlFactory", "javax/naming/ldap/ControlFactory.html"], + \["ControllerEventListener", "javax/sound/midi/ControllerEventListener.html"], + \["ConvolveOp", "java/awt/image/ConvolveOp.html"], + \["CookieHandler", "java/net/CookieHandler.html"], + \["CookieHolder", "org/omg/PortableServer/ServantLocatorPackage/CookieHolder.html"], + \["CookieManager", "java/net/CookieManager.html"], + \["CookiePolicy", "java/net/CookiePolicy.html"], + \["CookieStore", "java/net/CookieStore.html"], + \["Copies", "javax/print/attribute/standard/Copies.html"], + \["CopiesSupported", "javax/print/attribute/standard/CopiesSupported.html"], + \["CopyOnWriteArrayList", "java/util/concurrent/CopyOnWriteArrayList.html"], + \["CopyOnWriteArraySet", "java/util/concurrent/CopyOnWriteArraySet.html"], + \["CountDownLatch", "java/util/concurrent/CountDownLatch.html"], + \["CounterMonitor", "javax/management/monitor/CounterMonitor.html"], + \["CounterMonitorMBean", "javax/management/monitor/CounterMonitorMBean.html"], + \["CRC32", "java/util/zip/CRC32.html"], + \["CredentialException", "javax/security/auth/login/CredentialException.html"], + \["CredentialExpiredException", "javax/security/auth/login/CredentialExpiredException.html"], + \["CredentialNotFoundException", "javax/security/auth/login/CredentialNotFoundException.html"], + \["CRL", "java/security/cert/CRL.html"], + \["CRLException", "java/security/cert/CRLException.html"], + \["CRLSelector", "java/security/cert/CRLSelector.html"], + \["CropImageFilter", "java/awt/image/CropImageFilter.html"], + \["CSS", "javax/swing/text/html/CSS.html"], + \["CSS.Attribute", "javax/swing/text/html/CSS.Attribute.html"], + \["CTX_RESTRICT_SCOPE", "org/omg/CORBA/CTX_RESTRICT_SCOPE.html"], + \["CubicCurve2D", "java/awt/geom/CubicCurve2D.html"], + \["CubicCurve2D.Double", "java/awt/geom/CubicCurve2D.Double.html"], + \["CubicCurve2D.Float", "java/awt/geom/CubicCurve2D.Float.html"], + \["Currency", "java/util/Currency.html"], + \["CurrencyNameProvider", "java/util/spi/CurrencyNameProvider.html"], + \["Current", "org/omg/CORBA/Current.html"], + \["Current", "org/omg/PortableInterceptor/Current.html"], + \["Current", "org/omg/PortableServer/Current.html"], + \["CurrentHelper", "org/omg/CORBA/CurrentHelper.html"], + \["CurrentHelper", "org/omg/PortableInterceptor/CurrentHelper.html"], + \["CurrentHelper", "org/omg/PortableServer/CurrentHelper.html"], + \["CurrentHolder", "org/omg/CORBA/CurrentHolder.html"], + \["CurrentOperations", "org/omg/CORBA/CurrentOperations.html"], + \["CurrentOperations", "org/omg/PortableInterceptor/CurrentOperations.html"], + \["CurrentOperations", "org/omg/PortableServer/CurrentOperations.html"], + \["Cursor", "java/awt/Cursor.html"], + \["Customizer", "java/beans/Customizer.html"], + \["CustomMarshal", "org/omg/CORBA/CustomMarshal.html"], + \["CustomValue", "org/omg/CORBA/portable/CustomValue.html"], + \["CyclicBarrier", "java/util/concurrent/CyclicBarrier.html"], + \["Data", "javax/xml/crypto/Data.html"], + \["DATA_CONVERSION", "org/omg/CORBA/DATA_CONVERSION.html"], + \["DatabaseMetaData", "java/sql/DatabaseMetaData.html"], + \["DataBindingException", "javax/xml/bind/DataBindingException.html"], + \["DataBuffer", "java/awt/image/DataBuffer.html"], + \["DataBufferByte", "java/awt/image/DataBufferByte.html"], + \["DataBufferDouble", "java/awt/image/DataBufferDouble.html"], + \["DataBufferFloat", "java/awt/image/DataBufferFloat.html"], + \["DataBufferInt", "java/awt/image/DataBufferInt.html"], + \["DataBufferShort", "java/awt/image/DataBufferShort.html"], + \["DataBufferUShort", "java/awt/image/DataBufferUShort.html"], + \["DataContentHandler", "javax/activation/DataContentHandler.html"], + \["DataContentHandlerFactory", "javax/activation/DataContentHandlerFactory.html"], + \["DataFlavor", "java/awt/datatransfer/DataFlavor.html"], + \["DataFormatException", "java/util/zip/DataFormatException.html"], + \["DatagramChannel", "java/nio/channels/DatagramChannel.html"], + \["DatagramPacket", "java/net/DatagramPacket.html"], + \["DatagramSocket", "java/net/DatagramSocket.html"], + \["DatagramSocketImpl", "java/net/DatagramSocketImpl.html"], + \["DatagramSocketImplFactory", "java/net/DatagramSocketImplFactory.html"], + \["DataHandler", "javax/activation/DataHandler.html"], + \["DataInput", "java/io/DataInput.html"], + \["DataInputStream", "java/io/DataInputStream.html"], + \["DataInputStream", "org/omg/CORBA/DataInputStream.html"], + \["DataLine", "javax/sound/sampled/DataLine.html"], + \["DataLine.Info", "javax/sound/sampled/DataLine.Info.html"], + \["DataOutput", "java/io/DataOutput.html"], + \["DataOutputStream", "java/io/DataOutputStream.html"], + \["DataOutputStream", "org/omg/CORBA/DataOutputStream.html"], + \["DataSource", "javax/activation/DataSource.html"], + \["DataSource", "javax/sql/DataSource.html"], + \["DataTruncation", "java/sql/DataTruncation.html"], + \["DatatypeConfigurationException", "javax/xml/datatype/DatatypeConfigurationException.html"], + \["DatatypeConstants", "javax/xml/datatype/DatatypeConstants.html"], + \["DatatypeConstants.Field", "javax/xml/datatype/DatatypeConstants.Field.html"], + \["DatatypeConverter", "javax/xml/bind/DatatypeConverter.html"], + \["DatatypeConverterInterface", "javax/xml/bind/DatatypeConverterInterface.html"], + \["DatatypeFactory", "javax/xml/datatype/DatatypeFactory.html"], + \["Date", "java/sql/Date.html"], + \["Date", "java/util/Date.html"], + \["DateFormat", "java/text/DateFormat.html"], + \["DateFormat.Field", "java/text/DateFormat.Field.html"], + \["DateFormatProvider", "java/text/spi/DateFormatProvider.html"], + \["DateFormatSymbols", "java/text/DateFormatSymbols.html"], + \["DateFormatSymbolsProvider", "java/text/spi/DateFormatSymbolsProvider.html"], + \["DateFormatter", "javax/swing/text/DateFormatter.html"], + \["DateTimeAtCompleted", "javax/print/attribute/standard/DateTimeAtCompleted.html"], + \["DateTimeAtCreation", "javax/print/attribute/standard/DateTimeAtCreation.html"], + \["DateTimeAtProcessing", "javax/print/attribute/standard/DateTimeAtProcessing.html"], + \["DateTimeSyntax", "javax/print/attribute/DateTimeSyntax.html"], + \["DebugGraphics", "javax/swing/DebugGraphics.html"], + \["DecimalFormat", "java/text/DecimalFormat.html"], + \["DecimalFormatSymbols", "java/text/DecimalFormatSymbols.html"], + \["DecimalFormatSymbolsProvider", "java/text/spi/DecimalFormatSymbolsProvider.html"], + \["DeclaredType", "javax/lang/model/type/DeclaredType.html"], + \["DeclHandler", "org/xml/sax/ext/DeclHandler.html"], + \["DefaultBoundedRangeModel", "javax/swing/DefaultBoundedRangeModel.html"], + \["DefaultButtonModel", "javax/swing/DefaultButtonModel.html"], + \["DefaultCaret", "javax/swing/text/DefaultCaret.html"], + \["DefaultCellEditor", "javax/swing/DefaultCellEditor.html"], + \["DefaultColorSelectionModel", "javax/swing/colorchooser/DefaultColorSelectionModel.html"], + \["DefaultComboBoxModel", "javax/swing/DefaultComboBoxModel.html"], + \["DefaultDesktopManager", "javax/swing/DefaultDesktopManager.html"], + \["DefaultEditorKit", "javax/swing/text/DefaultEditorKit.html"], + \["DefaultEditorKit.BeepAction", "javax/swing/text/DefaultEditorKit.BeepAction.html"], + \["DefaultEditorKit.CopyAction", "javax/swing/text/DefaultEditorKit.CopyAction.html"], + \["DefaultEditorKit.CutAction", "javax/swing/text/DefaultEditorKit.CutAction.html"], + \["DefaultEditorKit.DefaultKeyTypedAction", "javax/swing/text/DefaultEditorKit.DefaultKeyTypedAction.html"], + \["DefaultEditorKit.InsertBreakAction", "javax/swing/text/DefaultEditorKit.InsertBreakAction.html"], + \["DefaultEditorKit.InsertContentAction", "javax/swing/text/DefaultEditorKit.InsertContentAction.html"], + \["DefaultEditorKit.InsertTabAction", "javax/swing/text/DefaultEditorKit.InsertTabAction.html"], + \["DefaultEditorKit.PasteAction", "javax/swing/text/DefaultEditorKit.PasteAction.html"], + \["DefaultFocusManager", "javax/swing/DefaultFocusManager.html"], + \["DefaultFocusTraversalPolicy", "java/awt/DefaultFocusTraversalPolicy.html"], + \["DefaultFormatter", "javax/swing/text/DefaultFormatter.html"], + \["DefaultFormatterFactory", "javax/swing/text/DefaultFormatterFactory.html"], + \["DefaultHandler", "org/xml/sax/helpers/DefaultHandler.html"], + \["DefaultHandler2", "org/xml/sax/ext/DefaultHandler2.html"], + \["DefaultHighlighter", "javax/swing/text/DefaultHighlighter.html"], + \["DefaultHighlighter.DefaultHighlightPainter", "javax/swing/text/DefaultHighlighter.DefaultHighlightPainter.html"], + \["DefaultKeyboardFocusManager", "java/awt/DefaultKeyboardFocusManager.html"], + \["DefaultListCellRenderer", "javax/swing/DefaultListCellRenderer.html"], + \["DefaultListCellRenderer.UIResource", "javax/swing/DefaultListCellRenderer.UIResource.html"], + \["DefaultListModel", "javax/swing/DefaultListModel.html"], + \["DefaultListSelectionModel", "javax/swing/DefaultListSelectionModel.html"], + \["DefaultLoaderRepository", "javax/management/DefaultLoaderRepository.html"], + \["DefaultLoaderRepository", "javax/management/loading/DefaultLoaderRepository.html"], + \["DefaultMenuLayout", "javax/swing/plaf/basic/DefaultMenuLayout.html"], + \["DefaultMetalTheme", "javax/swing/plaf/metal/DefaultMetalTheme.html"], + \["DefaultMutableTreeNode", "javax/swing/tree/DefaultMutableTreeNode.html"], + \["DefaultPersistenceDelegate", "java/beans/DefaultPersistenceDelegate.html"], + \["DefaultRowSorter", "javax/swing/DefaultRowSorter.html"], + \["DefaultRowSorter.ModelWrapper", "javax/swing/DefaultRowSorter.ModelWrapper.html"], + \["DefaultSingleSelectionModel", "javax/swing/DefaultSingleSelectionModel.html"], + \["DefaultStyledDocument", "javax/swing/text/DefaultStyledDocument.html"], + \["DefaultStyledDocument.AttributeUndoableEdit", "javax/swing/text/DefaultStyledDocument.AttributeUndoableEdit.html"], + \["DefaultStyledDocument.ElementSpec", "javax/swing/text/DefaultStyledDocument.ElementSpec.html"], + \["DefaultTableCellRenderer", "javax/swing/table/DefaultTableCellRenderer.html"], + \["DefaultTableCellRenderer.UIResource", "javax/swing/table/DefaultTableCellRenderer.UIResource.html"], + \["DefaultTableColumnModel", "javax/swing/table/DefaultTableColumnModel.html"], + \["DefaultTableModel", "javax/swing/table/DefaultTableModel.html"], + \["DefaultTextUI", "javax/swing/text/DefaultTextUI.html"], + \["DefaultTreeCellEditor", "javax/swing/tree/DefaultTreeCellEditor.html"], + \["DefaultTreeCellRenderer", "javax/swing/tree/DefaultTreeCellRenderer.html"], + \["DefaultTreeModel", "javax/swing/tree/DefaultTreeModel.html"], + \["DefaultTreeSelectionModel", "javax/swing/tree/DefaultTreeSelectionModel.html"], + \["DefaultValidationEventHandler", "javax/xml/bind/helpers/DefaultValidationEventHandler.html"], + \["DefinitionKind", "org/omg/CORBA/DefinitionKind.html"], + \["DefinitionKindHelper", "org/omg/CORBA/DefinitionKindHelper.html"], + \["Deflater", "java/util/zip/Deflater.html"], + \["DeflaterInputStream", "java/util/zip/DeflaterInputStream.html"], + \["DeflaterOutputStream", "java/util/zip/DeflaterOutputStream.html"], + \["Delayed", "java/util/concurrent/Delayed.html"], + \["DelayQueue", "java/util/concurrent/DelayQueue.html"], + \["Delegate", "org/omg/CORBA/portable/Delegate.html"], + \["Delegate", "org/omg/CORBA_2_3/portable/Delegate.html"], + \["Delegate", "org/omg/PortableServer/portable/Delegate.html"], + \["DelegationPermission", "javax/security/auth/kerberos/DelegationPermission.html"], + \["Deprecated", "java/lang/Deprecated.html"], + \["Deque", "java/util/Deque.html"], + \["Descriptor", "javax/management/Descriptor.html"], + \["DescriptorAccess", "javax/management/DescriptorAccess.html"], + \["DescriptorKey", "javax/management/DescriptorKey.html"], + \["DescriptorRead", "javax/management/DescriptorRead.html"], + \["DescriptorSupport", "javax/management/modelmbean/DescriptorSupport.html"], + \["DESedeKeySpec", "javax/crypto/spec/DESedeKeySpec.html"], + \["DesignMode", "java/beans/DesignMode.html"], + \["DESKeySpec", "javax/crypto/spec/DESKeySpec.html"], + \["Desktop", "java/awt/Desktop.html"], + \["Desktop.Action", "java/awt/Desktop.Action.html"], + \["DesktopIconUI", "javax/swing/plaf/DesktopIconUI.html"], + \["DesktopManager", "javax/swing/DesktopManager.html"], + \["DesktopPaneUI", "javax/swing/plaf/DesktopPaneUI.html"], + \["Destination", "javax/print/attribute/standard/Destination.html"], + \["Destroyable", "javax/security/auth/Destroyable.html"], + \["DestroyFailedException", "javax/security/auth/DestroyFailedException.html"], + \["Detail", "javax/xml/soap/Detail.html"], + \["DetailEntry", "javax/xml/soap/DetailEntry.html"], + \["DGC", "java/rmi/dgc/DGC.html"], + \["DHGenParameterSpec", "javax/crypto/spec/DHGenParameterSpec.html"], + \["DHKey", "javax/crypto/interfaces/DHKey.html"], + \["DHParameterSpec", "javax/crypto/spec/DHParameterSpec.html"], + \["DHPrivateKey", "javax/crypto/interfaces/DHPrivateKey.html"], + \["DHPrivateKeySpec", "javax/crypto/spec/DHPrivateKeySpec.html"], + \["DHPublicKey", "javax/crypto/interfaces/DHPublicKey.html"], + \["DHPublicKeySpec", "javax/crypto/spec/DHPublicKeySpec.html"], + \["Diagnostic", "javax/tools/Diagnostic.html"], + \["Diagnostic.Kind", "javax/tools/Diagnostic.Kind.html"], + \["DiagnosticCollector", "javax/tools/DiagnosticCollector.html"], + \["DiagnosticListener", "javax/tools/DiagnosticListener.html"], + \["Dialog", "java/awt/Dialog.html"], + \["Dialog.ModalExclusionType", "java/awt/Dialog.ModalExclusionType.html"], + \["Dialog.ModalityType", "java/awt/Dialog.ModalityType.html"], + \["Dictionary", "java/util/Dictionary.html"], + \["DigestException", "java/security/DigestException.html"], + \["DigestInputStream", "java/security/DigestInputStream.html"], + \["DigestMethod", "javax/xml/crypto/dsig/DigestMethod.html"], + \["DigestMethodParameterSpec", "javax/xml/crypto/dsig/spec/DigestMethodParameterSpec.html"], + \["DigestOutputStream", "java/security/DigestOutputStream.html"], + \["Dimension", "java/awt/Dimension.html"], + \["Dimension2D", "java/awt/geom/Dimension2D.html"], + \["DimensionUIResource", "javax/swing/plaf/DimensionUIResource.html"], + \["DirContext", "javax/naming/directory/DirContext.html"], + \["DirectColorModel", "java/awt/image/DirectColorModel.html"], + \["DirectoryManager", "javax/naming/spi/DirectoryManager.html"], + \["DirObjectFactory", "javax/naming/spi/DirObjectFactory.html"], + \["DirStateFactory", "javax/naming/spi/DirStateFactory.html"], + \["DirStateFactory.Result", "javax/naming/spi/DirStateFactory.Result.html"], + \["DISCARDING", "org/omg/PortableInterceptor/DISCARDING.html"], + \["Dispatch", "javax/xml/ws/Dispatch.html"], + \["DisplayMode", "java/awt/DisplayMode.html"], + \["DnDConstants", "java/awt/dnd/DnDConstants.html"], + \["Doc", "javax/print/Doc.html"], + \["DocAttribute", "javax/print/attribute/DocAttribute.html"], + \["DocAttributeSet", "javax/print/attribute/DocAttributeSet.html"], + \["DocFlavor", "javax/print/DocFlavor.html"], + \["DocFlavor.BYTE_ARRAY", "javax/print/DocFlavor.BYTE_ARRAY.html"], + \["DocFlavor.CHAR_ARRAY", "javax/print/DocFlavor.CHAR_ARRAY.html"], + \["DocFlavor.INPUT_STREAM", "javax/print/DocFlavor.INPUT_STREAM.html"], + \["DocFlavor.READER", "javax/print/DocFlavor.READER.html"], + \["DocFlavor.SERVICE_FORMATTED", "javax/print/DocFlavor.SERVICE_FORMATTED.html"], + \["DocFlavor.STRING", "javax/print/DocFlavor.STRING.html"], + \["DocFlavor.URL", "javax/print/DocFlavor.URL.html"], + \["DocPrintJob", "javax/print/DocPrintJob.html"], + \["Document", "javax/swing/text/Document.html"], + \["Document", "org/w3c/dom/Document.html"], + \["DocumentBuilder", "javax/xml/parsers/DocumentBuilder.html"], + \["DocumentBuilderFactory", "javax/xml/parsers/DocumentBuilderFactory.html"], + \["Documented", "java/lang/annotation/Documented.html"], + \["DocumentEvent", "javax/swing/event/DocumentEvent.html"], + \["DocumentEvent", "org/w3c/dom/events/DocumentEvent.html"], + \["DocumentEvent.ElementChange", "javax/swing/event/DocumentEvent.ElementChange.html"], + \["DocumentEvent.EventType", "javax/swing/event/DocumentEvent.EventType.html"], + \["DocumentFilter", "javax/swing/text/DocumentFilter.html"], + \["DocumentFilter.FilterBypass", "javax/swing/text/DocumentFilter.FilterBypass.html"], + \["DocumentFragment", "org/w3c/dom/DocumentFragment.html"], + \["DocumentHandler", "org/xml/sax/DocumentHandler.html"], + \["DocumentListener", "javax/swing/event/DocumentListener.html"], + \["DocumentName", "javax/print/attribute/standard/DocumentName.html"], + \["DocumentParser", "javax/swing/text/html/parser/DocumentParser.html"], + \["DocumentType", "org/w3c/dom/DocumentType.html"], + \["DomainCombiner", "java/security/DomainCombiner.html"], + \["DomainManager", "org/omg/CORBA/DomainManager.html"], + \["DomainManagerOperations", "org/omg/CORBA/DomainManagerOperations.html"], + \["DOMConfiguration", "org/w3c/dom/DOMConfiguration.html"], + \["DOMCryptoContext", "javax/xml/crypto/dom/DOMCryptoContext.html"], + \["DOMError", "org/w3c/dom/DOMError.html"], + \["DOMErrorHandler", "org/w3c/dom/DOMErrorHandler.html"], + \["DOMException", "org/w3c/dom/DOMException.html"], + \["DomHandler", "javax/xml/bind/annotation/DomHandler.html"], + \["DOMImplementation", "org/w3c/dom/DOMImplementation.html"], + \["DOMImplementationList", "org/w3c/dom/DOMImplementationList.html"], + \["DOMImplementationLS", "org/w3c/dom/ls/DOMImplementationLS.html"], + \["DOMImplementationRegistry", "org/w3c/dom/bootstrap/DOMImplementationRegistry.html"], + \["DOMImplementationSource", "org/w3c/dom/DOMImplementationSource.html"], + \["DOMLocator", "javax/xml/transform/dom/DOMLocator.html"], + \["DOMLocator", "org/w3c/dom/DOMLocator.html"], + \["DOMResult", "javax/xml/transform/dom/DOMResult.html"], + \["DOMSignContext", "javax/xml/crypto/dsig/dom/DOMSignContext.html"], + \["DOMSource", "javax/xml/transform/dom/DOMSource.html"], + \["DOMStringList", "org/w3c/dom/DOMStringList.html"], + \["DOMStructure", "javax/xml/crypto/dom/DOMStructure.html"], + \["DOMURIReference", "javax/xml/crypto/dom/DOMURIReference.html"], + \["DOMValidateContext", "javax/xml/crypto/dsig/dom/DOMValidateContext.html"], + \["Double", "java/lang/Double.html"], + \["DoubleBuffer", "java/nio/DoubleBuffer.html"], + \["DoubleHolder", "org/omg/CORBA/DoubleHolder.html"], + \["DoubleSeqHelper", "org/omg/CORBA/DoubleSeqHelper.html"], + \["DoubleSeqHolder", "org/omg/CORBA/DoubleSeqHolder.html"], + \["DragGestureEvent", "java/awt/dnd/DragGestureEvent.html"], + \["DragGestureListener", "java/awt/dnd/DragGestureListener.html"], + \["DragGestureRecognizer", "java/awt/dnd/DragGestureRecognizer.html"], + \["DragSource", "java/awt/dnd/DragSource.html"], + \["DragSourceAdapter", "java/awt/dnd/DragSourceAdapter.html"], + \["DragSourceContext", "java/awt/dnd/DragSourceContext.html"], + \["DragSourceDragEvent", "java/awt/dnd/DragSourceDragEvent.html"], + \["DragSourceDropEvent", "java/awt/dnd/DragSourceDropEvent.html"], + \["DragSourceEvent", "java/awt/dnd/DragSourceEvent.html"], + \["DragSourceListener", "java/awt/dnd/DragSourceListener.html"], + \["DragSourceMotionListener", "java/awt/dnd/DragSourceMotionListener.html"], + \["Driver", "java/sql/Driver.html"], + \["DriverManager", "java/sql/DriverManager.html"], + \["DriverPropertyInfo", "java/sql/DriverPropertyInfo.html"], + \["DropMode", "javax/swing/DropMode.html"], + \["DropTarget", "java/awt/dnd/DropTarget.html"], + \["DropTarget.DropTargetAutoScroller", "java/awt/dnd/DropTarget.DropTargetAutoScroller.html"], + \["DropTargetAdapter", "java/awt/dnd/DropTargetAdapter.html"], + \["DropTargetContext", "java/awt/dnd/DropTargetContext.html"], + \["DropTargetDragEvent", "java/awt/dnd/DropTargetDragEvent.html"], + \["DropTargetDropEvent", "java/awt/dnd/DropTargetDropEvent.html"], + \["DropTargetEvent", "java/awt/dnd/DropTargetEvent.html"], + \["DropTargetListener", "java/awt/dnd/DropTargetListener.html"], + \["DSAKey", "java/security/interfaces/DSAKey.html"], + \["DSAKeyPairGenerator", "java/security/interfaces/DSAKeyPairGenerator.html"], + \["DSAParameterSpec", "java/security/spec/DSAParameterSpec.html"], + \["DSAParams", "java/security/interfaces/DSAParams.html"], + \["DSAPrivateKey", "java/security/interfaces/DSAPrivateKey.html"], + \["DSAPrivateKeySpec", "java/security/spec/DSAPrivateKeySpec.html"], + \["DSAPublicKey", "java/security/interfaces/DSAPublicKey.html"], + \["DSAPublicKeySpec", "java/security/spec/DSAPublicKeySpec.html"], + \["DTD", "javax/swing/text/html/parser/DTD.html"], + \["DTD", "javax/xml/stream/events/DTD.html"], + \["DTDConstants", "javax/swing/text/html/parser/DTDConstants.html"], + \["DTDHandler", "org/xml/sax/DTDHandler.html"], + \["DuplicateFormatFlagsException", "java/util/DuplicateFormatFlagsException.html"], + \["DuplicateName", "org/omg/PortableInterceptor/ORBInitInfoPackage/DuplicateName.html"], + \["DuplicateNameHelper", "org/omg/PortableInterceptor/ORBInitInfoPackage/DuplicateNameHelper.html"], + \["Duration", "javax/xml/datatype/Duration.html"], + \["DynamicImplementation", "org/omg/CORBA/DynamicImplementation.html"], + \["DynamicImplementation", "org/omg/PortableServer/DynamicImplementation.html"], + \["DynamicMBean", "javax/management/DynamicMBean.html"], + \["DynAny", "org/omg/CORBA/DynAny.html"], + \["DynAny", "org/omg/DynamicAny/DynAny.html"], + \["DynAnyFactory", "org/omg/DynamicAny/DynAnyFactory.html"], + \["DynAnyFactoryHelper", "org/omg/DynamicAny/DynAnyFactoryHelper.html"], + \["DynAnyFactoryOperations", "org/omg/DynamicAny/DynAnyFactoryOperations.html"], + \["DynAnyHelper", "org/omg/DynamicAny/DynAnyHelper.html"], + \["DynAnyOperations", "org/omg/DynamicAny/DynAnyOperations.html"], + \["DynAnySeqHelper", "org/omg/DynamicAny/DynAnySeqHelper.html"], + \["DynArray", "org/omg/CORBA/DynArray.html"], + \["DynArray", "org/omg/DynamicAny/DynArray.html"], + \["DynArrayHelper", "org/omg/DynamicAny/DynArrayHelper.html"], + \["DynArrayOperations", "org/omg/DynamicAny/DynArrayOperations.html"], + \["DynEnum", "org/omg/CORBA/DynEnum.html"], + \["DynEnum", "org/omg/DynamicAny/DynEnum.html"], + \["DynEnumHelper", "org/omg/DynamicAny/DynEnumHelper.html"], + \["DynEnumOperations", "org/omg/DynamicAny/DynEnumOperations.html"], + \["DynFixed", "org/omg/CORBA/DynFixed.html"], + \["DynFixed", "org/omg/DynamicAny/DynFixed.html"], + \["DynFixedHelper", "org/omg/DynamicAny/DynFixedHelper.html"], + \["DynFixedOperations", "org/omg/DynamicAny/DynFixedOperations.html"], + \["DynSequence", "org/omg/CORBA/DynSequence.html"], + \["DynSequence", "org/omg/DynamicAny/DynSequence.html"], + \["DynSequenceHelper", "org/omg/DynamicAny/DynSequenceHelper.html"], + \["DynSequenceOperations", "org/omg/DynamicAny/DynSequenceOperations.html"], + \["DynStruct", "org/omg/CORBA/DynStruct.html"], + \["DynStruct", "org/omg/DynamicAny/DynStruct.html"], + \["DynStructHelper", "org/omg/DynamicAny/DynStructHelper.html"], + \["DynStructOperations", "org/omg/DynamicAny/DynStructOperations.html"], + \["DynUnion", "org/omg/CORBA/DynUnion.html"], + \["DynUnion", "org/omg/DynamicAny/DynUnion.html"], + \["DynUnionHelper", "org/omg/DynamicAny/DynUnionHelper.html"], + \["DynUnionOperations", "org/omg/DynamicAny/DynUnionOperations.html"], + \["DynValue", "org/omg/CORBA/DynValue.html"], + \["DynValue", "org/omg/DynamicAny/DynValue.html"], + \["DynValueBox", "org/omg/DynamicAny/DynValueBox.html"], + \["DynValueBoxOperations", "org/omg/DynamicAny/DynValueBoxOperations.html"], + \["DynValueCommon", "org/omg/DynamicAny/DynValueCommon.html"], + \["DynValueCommonOperations", "org/omg/DynamicAny/DynValueCommonOperations.html"], + \["DynValueHelper", "org/omg/DynamicAny/DynValueHelper.html"], + \["DynValueOperations", "org/omg/DynamicAny/DynValueOperations.html"], + \["ECField", "java/security/spec/ECField.html"], + \["ECFieldF2m", "java/security/spec/ECFieldF2m.html"], + \["ECFieldFp", "java/security/spec/ECFieldFp.html"], + \["ECGenParameterSpec", "java/security/spec/ECGenParameterSpec.html"], + \["ECKey", "java/security/interfaces/ECKey.html"], + \["ECParameterSpec", "java/security/spec/ECParameterSpec.html"], + \["ECPoint", "java/security/spec/ECPoint.html"], + \["ECPrivateKey", "java/security/interfaces/ECPrivateKey.html"], + \["ECPrivateKeySpec", "java/security/spec/ECPrivateKeySpec.html"], + \["ECPublicKey", "java/security/interfaces/ECPublicKey.html"], + \["ECPublicKeySpec", "java/security/spec/ECPublicKeySpec.html"], + \["EditorKit", "javax/swing/text/EditorKit.html"], + \["Element", "javax/lang/model/element/Element.html"], + \["Element", "javax/swing/text/Element.html"], + \["Element", "javax/swing/text/html/parser/Element.html"], + \["Element", "javax/xml/bind/Element.html"], + \["Element", "org/w3c/dom/Element.html"], + \["ElementFilter", "javax/lang/model/util/ElementFilter.html"], + \["ElementIterator", "javax/swing/text/ElementIterator.html"], + \["ElementKind", "javax/lang/model/element/ElementKind.html"], + \["ElementKindVisitor6", "javax/lang/model/util/ElementKindVisitor6.html"], + \["Elements", "javax/lang/model/util/Elements.html"], + \["ElementScanner6", "javax/lang/model/util/ElementScanner6.html"], + \["ElementType", "java/lang/annotation/ElementType.html"], + \["ElementVisitor", "javax/lang/model/element/ElementVisitor.html"], + \["Ellipse2D", "java/awt/geom/Ellipse2D.html"], + \["Ellipse2D.Double", "java/awt/geom/Ellipse2D.Double.html"], + \["Ellipse2D.Float", "java/awt/geom/Ellipse2D.Float.html"], + \["EllipticCurve", "java/security/spec/EllipticCurve.html"], + \["EmptyBorder", "javax/swing/border/EmptyBorder.html"], + \["EmptyStackException", "java/util/EmptyStackException.html"], + \["EncodedKeySpec", "java/security/spec/EncodedKeySpec.html"], + \["Encoder", "java/beans/Encoder.html"], + \["Encoding", "org/omg/IOP/Encoding.html"], + \["ENCODING_CDR_ENCAPS", "org/omg/IOP/ENCODING_CDR_ENCAPS.html"], + \["EncryptedPrivateKeyInfo", "javax/crypto/EncryptedPrivateKeyInfo.html"], + \["EndDocument", "javax/xml/stream/events/EndDocument.html"], + \["EndElement", "javax/xml/stream/events/EndElement.html"], + \["Endpoint", "javax/xml/ws/Endpoint.html"], + \["EndpointReference", "javax/xml/ws/EndpointReference.html"], + \["Entity", "javax/swing/text/html/parser/Entity.html"], + \["Entity", "org/w3c/dom/Entity.html"], + \["EntityDeclaration", "javax/xml/stream/events/EntityDeclaration.html"], + \["EntityReference", "javax/xml/stream/events/EntityReference.html"], + \["EntityReference", "org/w3c/dom/EntityReference.html"], + \["EntityResolver", "org/xml/sax/EntityResolver.html"], + \["EntityResolver2", "org/xml/sax/ext/EntityResolver2.html"], + \["Enum", "java/lang/Enum.html"], + \["EnumConstantNotPresentException", "java/lang/EnumConstantNotPresentException.html"], + \["EnumControl", "javax/sound/sampled/EnumControl.html"], + \["EnumControl.Type", "javax/sound/sampled/EnumControl.Type.html"], + \["Enumeration", "java/util/Enumeration.html"], + \["EnumMap", "java/util/EnumMap.html"], + \["EnumSet", "java/util/EnumSet.html"], + \["EnumSyntax", "javax/print/attribute/EnumSyntax.html"], + \["Environment", "org/omg/CORBA/Environment.html"], + \["EOFException", "java/io/EOFException.html"], + \["Error", "java/lang/Error.html"], + \["ErrorHandler", "org/xml/sax/ErrorHandler.html"], + \["ErrorListener", "javax/xml/transform/ErrorListener.html"], + \["ErrorManager", "java/util/logging/ErrorManager.html"], + \["ErrorType", "javax/lang/model/type/ErrorType.html"], + \["EtchedBorder", "javax/swing/border/EtchedBorder.html"], + \["Event", "java/awt/Event.html"], + \["Event", "org/w3c/dom/events/Event.html"], + \["EventContext", "javax/naming/event/EventContext.html"], + \["EventDirContext", "javax/naming/event/EventDirContext.html"], + \["EventException", "org/w3c/dom/events/EventException.html"], + \["EventFilter", "javax/xml/stream/EventFilter.html"], + \["EventHandler", "java/beans/EventHandler.html"], + \["EventListener", "java/util/EventListener.html"], + \["EventListener", "org/w3c/dom/events/EventListener.html"], + \["EventListenerList", "javax/swing/event/EventListenerList.html"], + \["EventListenerProxy", "java/util/EventListenerProxy.html"], + \["EventObject", "java/util/EventObject.html"], + \["EventQueue", "java/awt/EventQueue.html"], + \["EventReaderDelegate", "javax/xml/stream/util/EventReaderDelegate.html"], + \["EventSetDescriptor", "java/beans/EventSetDescriptor.html"], + \["EventTarget", "org/w3c/dom/events/EventTarget.html"], + \["ExcC14NParameterSpec", "javax/xml/crypto/dsig/spec/ExcC14NParameterSpec.html"], + \["Exception", "java/lang/Exception.html"], + \["ExceptionDetailMessage", "org/omg/IOP/ExceptionDetailMessage.html"], + \["ExceptionInInitializerError", "java/lang/ExceptionInInitializerError.html"], + \["ExceptionList", "org/omg/CORBA/ExceptionList.html"], + \["ExceptionListener", "java/beans/ExceptionListener.html"], + \["Exchanger", "java/util/concurrent/Exchanger.html"], + \["ExecutableElement", "javax/lang/model/element/ExecutableElement.html"], + \["ExecutableType", "javax/lang/model/type/ExecutableType.html"], + \["ExecutionException", "java/util/concurrent/ExecutionException.html"], + \["Executor", "java/util/concurrent/Executor.html"], + \["ExecutorCompletionService", "java/util/concurrent/ExecutorCompletionService.html"], + \["Executors", "java/util/concurrent/Executors.html"], + \["ExecutorService", "java/util/concurrent/ExecutorService.html"], + \["ExemptionMechanism", "javax/crypto/ExemptionMechanism.html"], + \["ExemptionMechanismException", "javax/crypto/ExemptionMechanismException.html"], + \["ExemptionMechanismSpi", "javax/crypto/ExemptionMechanismSpi.html"], + \["ExpandVetoException", "javax/swing/tree/ExpandVetoException.html"], + \["ExportException", "java/rmi/server/ExportException.html"], + \["Expression", "java/beans/Expression.html"], + \["ExtendedRequest", "javax/naming/ldap/ExtendedRequest.html"], + \["ExtendedResponse", "javax/naming/ldap/ExtendedResponse.html"], + \["Externalizable", "java/io/Externalizable.html"], + \["FactoryConfigurationError", "javax/xml/parsers/FactoryConfigurationError.html"], + \["FactoryConfigurationError", "javax/xml/stream/FactoryConfigurationError.html"], + \["FailedLoginException", "javax/security/auth/login/FailedLoginException.html"], + \["FaultAction", "javax/xml/ws/FaultAction.html"], + \["FeatureDescriptor", "java/beans/FeatureDescriptor.html"], + \["Fidelity", "javax/print/attribute/standard/Fidelity.html"], + \["Field", "java/lang/reflect/Field.html"], + \["FieldNameHelper", "org/omg/CORBA/FieldNameHelper.html"], + \["FieldNameHelper", "org/omg/DynamicAny/FieldNameHelper.html"], + \["FieldPosition", "java/text/FieldPosition.html"], + \["FieldView", "javax/swing/text/FieldView.html"], + \["File", "java/io/File.html"], + \["FileCacheImageInputStream", "javax/imageio/stream/FileCacheImageInputStream.html"], + \["FileCacheImageOutputStream", "javax/imageio/stream/FileCacheImageOutputStream.html"], + \["FileChannel", "java/nio/channels/FileChannel.html"], + \["FileChannel.MapMode", "java/nio/channels/FileChannel.MapMode.html"], + \["FileChooserUI", "javax/swing/plaf/FileChooserUI.html"], + \["FileDataSource", "javax/activation/FileDataSource.html"], + \["FileDescriptor", "java/io/FileDescriptor.html"], + \["FileDialog", "java/awt/FileDialog.html"], + \["FileFilter", "java/io/FileFilter.html"], + \["FileFilter", "javax/swing/filechooser/FileFilter.html"], + \["FileHandler", "java/util/logging/FileHandler.html"], + \["FileImageInputStream", "javax/imageio/stream/FileImageInputStream.html"], + \["FileImageOutputStream", "javax/imageio/stream/FileImageOutputStream.html"], + \["FileInputStream", "java/io/FileInputStream.html"], + \["FileLock", "java/nio/channels/FileLock.html"], + \["FileLockInterruptionException", "java/nio/channels/FileLockInterruptionException.html"], + \["FileNameExtensionFilter", "javax/swing/filechooser/FileNameExtensionFilter.html"], + \["FilenameFilter", "java/io/FilenameFilter.html"], + \["FileNameMap", "java/net/FileNameMap.html"], + \["FileNotFoundException", "java/io/FileNotFoundException.html"], + \["FileObject", "javax/tools/FileObject.html"], + \["FileOutputStream", "java/io/FileOutputStream.html"], + \["FilePermission", "java/io/FilePermission.html"], + \["Filer", "javax/annotation/processing/Filer.html"], + \["FileReader", "java/io/FileReader.html"], + \["FilerException", "javax/annotation/processing/FilerException.html"], + \["FileSystemView", "javax/swing/filechooser/FileSystemView.html"], + \["FileTypeMap", "javax/activation/FileTypeMap.html"], + \["FileView", "javax/swing/filechooser/FileView.html"], + \["FileWriter", "java/io/FileWriter.html"], + \["Filter", "java/util/logging/Filter.html"], + \["FilteredImageSource", "java/awt/image/FilteredImageSource.html"], + \["FilteredRowSet", "javax/sql/rowset/FilteredRowSet.html"], + \["FilterInputStream", "java/io/FilterInputStream.html"], + \["FilterOutputStream", "java/io/FilterOutputStream.html"], + \["FilterReader", "java/io/FilterReader.html"], + \["FilterWriter", "java/io/FilterWriter.html"], + \["Finishings", "javax/print/attribute/standard/Finishings.html"], + \["FixedHeightLayoutCache", "javax/swing/tree/FixedHeightLayoutCache.html"], + \["FixedHolder", "org/omg/CORBA/FixedHolder.html"], + \["FlatteningPathIterator", "java/awt/geom/FlatteningPathIterator.html"], + \["FlavorEvent", "java/awt/datatransfer/FlavorEvent.html"], + \["FlavorException", "javax/print/FlavorException.html"], + \["FlavorListener", "java/awt/datatransfer/FlavorListener.html"], + \["FlavorMap", "java/awt/datatransfer/FlavorMap.html"], + \["FlavorTable", "java/awt/datatransfer/FlavorTable.html"], + \["Float", "java/lang/Float.html"], + \["FloatBuffer", "java/nio/FloatBuffer.html"], + \["FloatControl", "javax/sound/sampled/FloatControl.html"], + \["FloatControl.Type", "javax/sound/sampled/FloatControl.Type.html"], + \["FloatHolder", "org/omg/CORBA/FloatHolder.html"], + \["FloatSeqHelper", "org/omg/CORBA/FloatSeqHelper.html"], + \["FloatSeqHolder", "org/omg/CORBA/FloatSeqHolder.html"], + \["FlowLayout", "java/awt/FlowLayout.html"], + \["FlowView", "javax/swing/text/FlowView.html"], + \["FlowView.FlowStrategy", "javax/swing/text/FlowView.FlowStrategy.html"], + \["Flushable", "java/io/Flushable.html"], + \["FocusAdapter", "java/awt/event/FocusAdapter.html"], + \["FocusEvent", "java/awt/event/FocusEvent.html"], + \["FocusListener", "java/awt/event/FocusListener.html"], + \["FocusManager", "javax/swing/FocusManager.html"], + \["FocusTraversalPolicy", "java/awt/FocusTraversalPolicy.html"], + \["Font", "java/awt/Font.html"], + \["FontFormatException", "java/awt/FontFormatException.html"], + \["FontMetrics", "java/awt/FontMetrics.html"], + \["FontRenderContext", "java/awt/font/FontRenderContext.html"], + \["FontUIResource", "javax/swing/plaf/FontUIResource.html"], + \["Format", "java/text/Format.html"], + \["Format.Field", "java/text/Format.Field.html"], + \["FormatConversionProvider", "javax/sound/sampled/spi/FormatConversionProvider.html"], + \["FormatFlagsConversionMismatchException", "java/util/FormatFlagsConversionMismatchException.html"], + \["FormatMismatch", "org/omg/IOP/CodecPackage/FormatMismatch.html"], + \["FormatMismatchHelper", "org/omg/IOP/CodecPackage/FormatMismatchHelper.html"], + \["Formattable", "java/util/Formattable.html"], + \["FormattableFlags", "java/util/FormattableFlags.html"], + \["Formatter", "java/util/Formatter.html"], + \["Formatter", "java/util/logging/Formatter.html"], + \["Formatter.BigDecimalLayoutForm", "java/util/Formatter.BigDecimalLayoutForm.html"], + \["FormatterClosedException", "java/util/FormatterClosedException.html"], + \["FormSubmitEvent", "javax/swing/text/html/FormSubmitEvent.html"], + \["FormSubmitEvent.MethodType", "javax/swing/text/html/FormSubmitEvent.MethodType.html"], + \["FormView", "javax/swing/text/html/FormView.html"], + \["ForwardingFileObject", "javax/tools/ForwardingFileObject.html"], + \["ForwardingJavaFileManager", "javax/tools/ForwardingJavaFileManager.html"], + \["ForwardingJavaFileObject", "javax/tools/ForwardingJavaFileObject.html"], + \["ForwardRequest", "org/omg/PortableInterceptor/ForwardRequest.html"], + \["ForwardRequest", "org/omg/PortableServer/ForwardRequest.html"], + \["ForwardRequestHelper", "org/omg/PortableInterceptor/ForwardRequestHelper.html"], + \["ForwardRequestHelper", "org/omg/PortableServer/ForwardRequestHelper.html"], + \["Frame", "java/awt/Frame.html"], + \["FREE_MEM", "org/omg/CORBA/FREE_MEM.html"], + \["Future", "java/util/concurrent/Future.html"], + \["FutureTask", "java/util/concurrent/FutureTask.html"], + \["GapContent", "javax/swing/text/GapContent.html"], + \["GarbageCollectorMXBean", "java/lang/management/GarbageCollectorMXBean.html"], + \["GatheringByteChannel", "java/nio/channels/GatheringByteChannel.html"], + \["GaugeMonitor", "javax/management/monitor/GaugeMonitor.html"], + \["GaugeMonitorMBean", "javax/management/monitor/GaugeMonitorMBean.html"], + \["GeneralPath", "java/awt/geom/GeneralPath.html"], + \["GeneralSecurityException", "java/security/GeneralSecurityException.html"], + \["Generated", "javax/annotation/Generated.html"], + \["GenericArrayType", "java/lang/reflect/GenericArrayType.html"], + \["GenericDeclaration", "java/lang/reflect/GenericDeclaration.html"], + \["GenericSignatureFormatError", "java/lang/reflect/GenericSignatureFormatError.html"], + \["GlyphJustificationInfo", "java/awt/font/GlyphJustificationInfo.html"], + \["GlyphMetrics", "java/awt/font/GlyphMetrics.html"], + \["GlyphVector", "java/awt/font/GlyphVector.html"], + \["GlyphView", "javax/swing/text/GlyphView.html"], + \["GlyphView.GlyphPainter", "javax/swing/text/GlyphView.GlyphPainter.html"], + \["GradientPaint", "java/awt/GradientPaint.html"], + \["GraphicAttribute", "java/awt/font/GraphicAttribute.html"], + \["Graphics", "java/awt/Graphics.html"], + \["Graphics2D", "java/awt/Graphics2D.html"], + \["GraphicsConfigTemplate", "java/awt/GraphicsConfigTemplate.html"], + \["GraphicsConfiguration", "java/awt/GraphicsConfiguration.html"], + \["GraphicsDevice", "java/awt/GraphicsDevice.html"], + \["GraphicsEnvironment", "java/awt/GraphicsEnvironment.html"], + \["GrayFilter", "javax/swing/GrayFilter.html"], + \["GregorianCalendar", "java/util/GregorianCalendar.html"], + \["GridBagConstraints", "java/awt/GridBagConstraints.html"], + \["GridBagLayout", "java/awt/GridBagLayout.html"], + \["GridBagLayoutInfo", "java/awt/GridBagLayoutInfo.html"], + \["GridLayout", "java/awt/GridLayout.html"], + \["Group", "java/security/acl/Group.html"], + \["GroupLayout", "javax/swing/GroupLayout.html"], + \["GroupLayout.Alignment", "javax/swing/GroupLayout.Alignment.html"], + \["GSSContext", "org/ietf/jgss/GSSContext.html"], + \["GSSCredential", "org/ietf/jgss/GSSCredential.html"], + \["GSSException", "org/ietf/jgss/GSSException.html"], + \["GSSManager", "org/ietf/jgss/GSSManager.html"], + \["GSSName", "org/ietf/jgss/GSSName.html"], + \["Guard", "java/security/Guard.html"], + \["GuardedObject", "java/security/GuardedObject.html"], + \["GZIPInputStream", "java/util/zip/GZIPInputStream.html"], + \["GZIPOutputStream", "java/util/zip/GZIPOutputStream.html"], + \["Handler", "java/util/logging/Handler.html"], + \["Handler", "javax/xml/ws/handler/Handler.html"], + \["HandlerBase", "org/xml/sax/HandlerBase.html"], + \["HandlerChain", "javax/jws/HandlerChain.html"], + \["HandlerResolver", "javax/xml/ws/handler/HandlerResolver.html"], + \["HandshakeCompletedEvent", "javax/net/ssl/HandshakeCompletedEvent.html"], + \["HandshakeCompletedListener", "javax/net/ssl/HandshakeCompletedListener.html"], + \["HasControls", "javax/naming/ldap/HasControls.html"], + \["HashAttributeSet", "javax/print/attribute/HashAttributeSet.html"], + \["HashDocAttributeSet", "javax/print/attribute/HashDocAttributeSet.html"], + \["HashMap", "java/util/HashMap.html"], + \["HashPrintJobAttributeSet", "javax/print/attribute/HashPrintJobAttributeSet.html"], + \["HashPrintRequestAttributeSet", "javax/print/attribute/HashPrintRequestAttributeSet.html"], + \["HashPrintServiceAttributeSet", "javax/print/attribute/HashPrintServiceAttributeSet.html"], + \["HashSet", "java/util/HashSet.html"], + \["Hashtable", "java/util/Hashtable.html"], + \["HeadlessException", "java/awt/HeadlessException.html"], + \["HexBinaryAdapter", "javax/xml/bind/annotation/adapters/HexBinaryAdapter.html"], + \["HierarchyBoundsAdapter", "java/awt/event/HierarchyBoundsAdapter.html"], + \["HierarchyBoundsListener", "java/awt/event/HierarchyBoundsListener.html"], + \["HierarchyEvent", "java/awt/event/HierarchyEvent.html"], + \["HierarchyListener", "java/awt/event/HierarchyListener.html"], + \["Highlighter", "javax/swing/text/Highlighter.html"], + \["Highlighter.Highlight", "javax/swing/text/Highlighter.Highlight.html"], + \["Highlighter.HighlightPainter", "javax/swing/text/Highlighter.HighlightPainter.html"], + \["HMACParameterSpec", "javax/xml/crypto/dsig/spec/HMACParameterSpec.html"], + \["Holder", "javax/xml/ws/Holder.html"], + \["HOLDING", "org/omg/PortableInterceptor/HOLDING.html"], + \["HostnameVerifier", "javax/net/ssl/HostnameVerifier.html"], + \["HTML", "javax/swing/text/html/HTML.html"], + \["HTML.Attribute", "javax/swing/text/html/HTML.Attribute.html"], + \["HTML.Tag", "javax/swing/text/html/HTML.Tag.html"], + \["HTML.UnknownTag", "javax/swing/text/html/HTML.UnknownTag.html"], + \["HTMLDocument", "javax/swing/text/html/HTMLDocument.html"], + \["HTMLDocument.Iterator", "javax/swing/text/html/HTMLDocument.Iterator.html"], + \["HTMLEditorKit", "javax/swing/text/html/HTMLEditorKit.html"], + \["HTMLEditorKit.HTMLFactory", "javax/swing/text/html/HTMLEditorKit.HTMLFactory.html"], + \["HTMLEditorKit.HTMLTextAction", "javax/swing/text/html/HTMLEditorKit.HTMLTextAction.html"], + \["HTMLEditorKit.InsertHTMLTextAction", "javax/swing/text/html/HTMLEditorKit.InsertHTMLTextAction.html"], + \["HTMLEditorKit.LinkController", "javax/swing/text/html/HTMLEditorKit.LinkController.html"], + \["HTMLEditorKit.Parser", "javax/swing/text/html/HTMLEditorKit.Parser.html"], + \["HTMLEditorKit.ParserCallback", "javax/swing/text/html/HTMLEditorKit.ParserCallback.html"], + \["HTMLFrameHyperlinkEvent", "javax/swing/text/html/HTMLFrameHyperlinkEvent.html"], + \["HTMLWriter", "javax/swing/text/html/HTMLWriter.html"], + \["HTTPBinding", "javax/xml/ws/http/HTTPBinding.html"], + \["HttpCookie", "java/net/HttpCookie.html"], + \["HTTPException", "javax/xml/ws/http/HTTPException.html"], + \["HttpRetryException", "java/net/HttpRetryException.html"], + \["HttpsURLConnection", "javax/net/ssl/HttpsURLConnection.html"], + \["HttpURLConnection", "java/net/HttpURLConnection.html"], + \["HyperlinkEvent", "javax/swing/event/HyperlinkEvent.html"], + \["HyperlinkEvent.EventType", "javax/swing/event/HyperlinkEvent.EventType.html"], + \["HyperlinkListener", "javax/swing/event/HyperlinkListener.html"], + \["ICC_ColorSpace", "java/awt/color/ICC_ColorSpace.html"], + \["ICC_Profile", "java/awt/color/ICC_Profile.html"], + \["ICC_ProfileGray", "java/awt/color/ICC_ProfileGray.html"], + \["ICC_ProfileRGB", "java/awt/color/ICC_ProfileRGB.html"], + \["Icon", "javax/swing/Icon.html"], + \["IconUIResource", "javax/swing/plaf/IconUIResource.html"], + \["IconView", "javax/swing/text/IconView.html"], + \["ID_ASSIGNMENT_POLICY_ID", "org/omg/PortableServer/ID_ASSIGNMENT_POLICY_ID.html"], + \["ID_UNIQUENESS_POLICY_ID", "org/omg/PortableServer/ID_UNIQUENESS_POLICY_ID.html"], + \["IdAssignmentPolicy", "org/omg/PortableServer/IdAssignmentPolicy.html"], + \["IdAssignmentPolicyOperations", "org/omg/PortableServer/IdAssignmentPolicyOperations.html"], + \["IdAssignmentPolicyValue", "org/omg/PortableServer/IdAssignmentPolicyValue.html"], + \["IdentifierHelper", "org/omg/CORBA/IdentifierHelper.html"], + \["Identity", "java/security/Identity.html"], + \["IdentityHashMap", "java/util/IdentityHashMap.html"], + \["IdentityScope", "java/security/IdentityScope.html"], + \["IDLEntity", "org/omg/CORBA/portable/IDLEntity.html"], + \["IDLType", "org/omg/CORBA/IDLType.html"], + \["IDLTypeHelper", "org/omg/CORBA/IDLTypeHelper.html"], + \["IDLTypeOperations", "org/omg/CORBA/IDLTypeOperations.html"], + \["IDN", "java/net/IDN.html"], + \["IdUniquenessPolicy", "org/omg/PortableServer/IdUniquenessPolicy.html"], + \["IdUniquenessPolicyOperations", "org/omg/PortableServer/IdUniquenessPolicyOperations.html"], + \["IdUniquenessPolicyValue", "org/omg/PortableServer/IdUniquenessPolicyValue.html"], + \["IIOByteBuffer", "javax/imageio/stream/IIOByteBuffer.html"], + \["IIOException", "javax/imageio/IIOException.html"], + \["IIOImage", "javax/imageio/IIOImage.html"], + \["IIOInvalidTreeException", "javax/imageio/metadata/IIOInvalidTreeException.html"], + \["IIOMetadata", "javax/imageio/metadata/IIOMetadata.html"], + \["IIOMetadataController", "javax/imageio/metadata/IIOMetadataController.html"], + \["IIOMetadataFormat", "javax/imageio/metadata/IIOMetadataFormat.html"], + \["IIOMetadataFormatImpl", "javax/imageio/metadata/IIOMetadataFormatImpl.html"], + \["IIOMetadataNode", "javax/imageio/metadata/IIOMetadataNode.html"], + \["IIOParam", "javax/imageio/IIOParam.html"], + \["IIOParamController", "javax/imageio/IIOParamController.html"], + \["IIOReadProgressListener", "javax/imageio/event/IIOReadProgressListener.html"], + \["IIOReadUpdateListener", "javax/imageio/event/IIOReadUpdateListener.html"], + \["IIOReadWarningListener", "javax/imageio/event/IIOReadWarningListener.html"], + \["IIORegistry", "javax/imageio/spi/IIORegistry.html"], + \["IIOServiceProvider", "javax/imageio/spi/IIOServiceProvider.html"], + \["IIOWriteProgressListener", "javax/imageio/event/IIOWriteProgressListener.html"], + \["IIOWriteWarningListener", "javax/imageio/event/IIOWriteWarningListener.html"], + \["IllegalAccessError", "java/lang/IllegalAccessError.html"], + \["IllegalAccessException", "java/lang/IllegalAccessException.html"], + \["IllegalArgumentException", "java/lang/IllegalArgumentException.html"], + \["IllegalBlockingModeException", "java/nio/channels/IllegalBlockingModeException.html"], + \["IllegalBlockSizeException", "javax/crypto/IllegalBlockSizeException.html"], + \["IllegalCharsetNameException", "java/nio/charset/IllegalCharsetNameException.html"], + \["IllegalClassFormatException", "java/lang/instrument/IllegalClassFormatException.html"], + \["IllegalComponentStateException", "java/awt/IllegalComponentStateException.html"], + \["IllegalFormatCodePointException", "java/util/IllegalFormatCodePointException.html"], + \["IllegalFormatConversionException", "java/util/IllegalFormatConversionException.html"], + \["IllegalFormatException", "java/util/IllegalFormatException.html"], + \["IllegalFormatFlagsException", "java/util/IllegalFormatFlagsException.html"], + \["IllegalFormatPrecisionException", "java/util/IllegalFormatPrecisionException.html"], + \["IllegalFormatWidthException", "java/util/IllegalFormatWidthException.html"], + \["IllegalMonitorStateException", "java/lang/IllegalMonitorStateException.html"], + \["IllegalPathStateException", "java/awt/geom/IllegalPathStateException.html"], + \["IllegalSelectorException", "java/nio/channels/IllegalSelectorException.html"], + \["IllegalStateException", "java/lang/IllegalStateException.html"], + \["IllegalThreadStateException", "java/lang/IllegalThreadStateException.html"], + \["Image", "java/awt/Image.html"], + \["ImageCapabilities", "java/awt/ImageCapabilities.html"], + \["ImageConsumer", "java/awt/image/ImageConsumer.html"], + \["ImageFilter", "java/awt/image/ImageFilter.html"], + \["ImageGraphicAttribute", "java/awt/font/ImageGraphicAttribute.html"], + \["ImageIcon", "javax/swing/ImageIcon.html"], + \["ImageInputStream", "javax/imageio/stream/ImageInputStream.html"], + \["ImageInputStreamImpl", "javax/imageio/stream/ImageInputStreamImpl.html"], + \["ImageInputStreamSpi", "javax/imageio/spi/ImageInputStreamSpi.html"], + \["ImageIO", "javax/imageio/ImageIO.html"], + \["ImageObserver", "java/awt/image/ImageObserver.html"], + \["ImageOutputStream", "javax/imageio/stream/ImageOutputStream.html"], + \["ImageOutputStreamImpl", "javax/imageio/stream/ImageOutputStreamImpl.html"], + \["ImageOutputStreamSpi", "javax/imageio/spi/ImageOutputStreamSpi.html"], + \["ImageProducer", "java/awt/image/ImageProducer.html"], + \["ImageReader", "javax/imageio/ImageReader.html"], + \["ImageReaderSpi", "javax/imageio/spi/ImageReaderSpi.html"], + \["ImageReaderWriterSpi", "javax/imageio/spi/ImageReaderWriterSpi.html"], + \["ImageReadParam", "javax/imageio/ImageReadParam.html"], + \["ImageTranscoder", "javax/imageio/ImageTranscoder.html"], + \["ImageTranscoderSpi", "javax/imageio/spi/ImageTranscoderSpi.html"], + \["ImageTypeSpecifier", "javax/imageio/ImageTypeSpecifier.html"], + \["ImageView", "javax/swing/text/html/ImageView.html"], + \["ImageWriteParam", "javax/imageio/ImageWriteParam.html"], + \["ImageWriter", "javax/imageio/ImageWriter.html"], + \["ImageWriterSpi", "javax/imageio/spi/ImageWriterSpi.html"], + \["ImagingOpException", "java/awt/image/ImagingOpException.html"], + \["ImmutableDescriptor", "javax/management/ImmutableDescriptor.html"], + \["IMP_LIMIT", "org/omg/CORBA/IMP_LIMIT.html"], + \["IMPLICIT_ACTIVATION_POLICY_ID", "org/omg/PortableServer/IMPLICIT_ACTIVATION_POLICY_ID.html"], + \["ImplicitActivationPolicy", "org/omg/PortableServer/ImplicitActivationPolicy.html"], + \["ImplicitActivationPolicyOperations", "org/omg/PortableServer/ImplicitActivationPolicyOperations.html"], + \["ImplicitActivationPolicyValue", "org/omg/PortableServer/ImplicitActivationPolicyValue.html"], + \["INACTIVE", "org/omg/PortableInterceptor/INACTIVE.html"], + \["IncompatibleClassChangeError", "java/lang/IncompatibleClassChangeError.html"], + \["IncompleteAnnotationException", "java/lang/annotation/IncompleteAnnotationException.html"], + \["InconsistentTypeCode", "org/omg/CORBA/ORBPackage/InconsistentTypeCode.html"], + \["InconsistentTypeCode", "org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCode.html"], + \["InconsistentTypeCodeHelper", "org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCodeHelper.html"], + \["IndexColorModel", "java/awt/image/IndexColorModel.html"], + \["IndexedPropertyChangeEvent", "java/beans/IndexedPropertyChangeEvent.html"], + \["IndexedPropertyDescriptor", "java/beans/IndexedPropertyDescriptor.html"], + \["IndexOutOfBoundsException", "java/lang/IndexOutOfBoundsException.html"], + \["IndirectionException", "org/omg/CORBA/portable/IndirectionException.html"], + \["Inet4Address", "java/net/Inet4Address.html"], + \["Inet6Address", "java/net/Inet6Address.html"], + \["InetAddress", "java/net/InetAddress.html"], + \["InetSocketAddress", "java/net/InetSocketAddress.html"], + \["Inflater", "java/util/zip/Inflater.html"], + \["InflaterInputStream", "java/util/zip/InflaterInputStream.html"], + \["InflaterOutputStream", "java/util/zip/InflaterOutputStream.html"], + \["InheritableThreadLocal", "java/lang/InheritableThreadLocal.html"], + \["Inherited", "java/lang/annotation/Inherited.html"], + \["InitialContext", "javax/naming/InitialContext.html"], + \["InitialContextFactory", "javax/naming/spi/InitialContextFactory.html"], + \["InitialContextFactoryBuilder", "javax/naming/spi/InitialContextFactoryBuilder.html"], + \["InitialDirContext", "javax/naming/directory/InitialDirContext.html"], + \["INITIALIZE", "org/omg/CORBA/INITIALIZE.html"], + \["InitialLdapContext", "javax/naming/ldap/InitialLdapContext.html"], + \["InitParam", "javax/jws/soap/InitParam.html"], + \["InlineView", "javax/swing/text/html/InlineView.html"], + \["InputContext", "java/awt/im/InputContext.html"], + \["InputEvent", "java/awt/event/InputEvent.html"], + \["InputMap", "javax/swing/InputMap.html"], + \["InputMapUIResource", "javax/swing/plaf/InputMapUIResource.html"], + \["InputMethod", "java/awt/im/spi/InputMethod.html"], + \["InputMethodContext", "java/awt/im/spi/InputMethodContext.html"], + \["InputMethodDescriptor", "java/awt/im/spi/InputMethodDescriptor.html"], + \["InputMethodEvent", "java/awt/event/InputMethodEvent.html"], + \["InputMethodHighlight", "java/awt/im/InputMethodHighlight.html"], + \["InputMethodListener", "java/awt/event/InputMethodListener.html"], + \["InputMethodRequests", "java/awt/im/InputMethodRequests.html"], + \["InputMismatchException", "java/util/InputMismatchException.html"], + \["InputSource", "org/xml/sax/InputSource.html"], + \["InputStream", "java/io/InputStream.html"], + \["InputStream", "org/omg/CORBA/portable/InputStream.html"], + \["InputStream", "org/omg/CORBA_2_3/portable/InputStream.html"], + \["InputStreamReader", "java/io/InputStreamReader.html"], + \["InputSubset", "java/awt/im/InputSubset.html"], + \["InputVerifier", "javax/swing/InputVerifier.html"], + \["Insets", "java/awt/Insets.html"], + \["InsetsUIResource", "javax/swing/plaf/InsetsUIResource.html"], + \["InstanceAlreadyExistsException", "javax/management/InstanceAlreadyExistsException.html"], + \["InstanceNotFoundException", "javax/management/InstanceNotFoundException.html"], + \["InstantiationError", "java/lang/InstantiationError.html"], + \["InstantiationException", "java/lang/InstantiationException.html"], + \["Instrument", "javax/sound/midi/Instrument.html"], + \["Instrumentation", "java/lang/instrument/Instrumentation.html"], + \["InsufficientResourcesException", "javax/naming/InsufficientResourcesException.html"], + \["IntBuffer", "java/nio/IntBuffer.html"], + \["Integer", "java/lang/Integer.html"], + \["IntegerSyntax", "javax/print/attribute/IntegerSyntax.html"], + \["Interceptor", "org/omg/PortableInterceptor/Interceptor.html"], + \["InterceptorOperations", "org/omg/PortableInterceptor/InterceptorOperations.html"], + \["InterfaceAddress", "java/net/InterfaceAddress.html"], + \["INTERNAL", "org/omg/CORBA/INTERNAL.html"], + \["InternalError", "java/lang/InternalError.html"], + \["InternalFrameAdapter", "javax/swing/event/InternalFrameAdapter.html"], + \["InternalFrameEvent", "javax/swing/event/InternalFrameEvent.html"], + \["InternalFrameFocusTraversalPolicy", "javax/swing/InternalFrameFocusTraversalPolicy.html"], + \["InternalFrameListener", "javax/swing/event/InternalFrameListener.html"], + \["InternalFrameUI", "javax/swing/plaf/InternalFrameUI.html"], + \["InternationalFormatter", "javax/swing/text/InternationalFormatter.html"], + \["InterruptedException", "java/lang/InterruptedException.html"], + \["InterruptedIOException", "java/io/InterruptedIOException.html"], + \["InterruptedNamingException", "javax/naming/InterruptedNamingException.html"], + \["InterruptibleChannel", "java/nio/channels/InterruptibleChannel.html"], + \["INTF_REPOS", "org/omg/CORBA/INTF_REPOS.html"], + \["IntHolder", "org/omg/CORBA/IntHolder.html"], + \["IntrospectionException", "java/beans/IntrospectionException.html"], + \["IntrospectionException", "javax/management/IntrospectionException.html"], + \["Introspector", "java/beans/Introspector.html"], + \["INV_FLAG", "org/omg/CORBA/INV_FLAG.html"], + \["INV_IDENT", "org/omg/CORBA/INV_IDENT.html"], + \["INV_OBJREF", "org/omg/CORBA/INV_OBJREF.html"], + \["INV_POLICY", "org/omg/CORBA/INV_POLICY.html"], + \["Invalid", "org/omg/CORBA/DynAnyPackage/Invalid.html"], + \["INVALID_ACTIVITY", "org/omg/CORBA/INVALID_ACTIVITY.html"], + \["INVALID_TRANSACTION", "org/omg/CORBA/INVALID_TRANSACTION.html"], + \["InvalidActivityException", "javax/activity/InvalidActivityException.html"], + \["InvalidAddress", "org/omg/CosNaming/NamingContextExtPackage/InvalidAddress.html"], + \["InvalidAddressHelper", "org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHelper.html"], + \["InvalidAddressHolder", "org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHolder.html"], + \["InvalidAlgorithmParameterException", "java/security/InvalidAlgorithmParameterException.html"], + \["InvalidApplicationException", "javax/management/InvalidApplicationException.html"], + \["InvalidAttributeIdentifierException", "javax/naming/directory/InvalidAttributeIdentifierException.html"], + \["InvalidAttributesException", "javax/naming/directory/InvalidAttributesException.html"], + \["InvalidAttributeValueException", "javax/management/InvalidAttributeValueException.html"], + \["InvalidAttributeValueException", "javax/naming/directory/InvalidAttributeValueException.html"], + \["InvalidClassException", "java/io/InvalidClassException.html"], + \["InvalidDnDOperationException", "java/awt/dnd/InvalidDnDOperationException.html"], + \["InvalidKeyException", "java/security/InvalidKeyException.html"], + \["InvalidKeyException", "javax/management/openmbean/InvalidKeyException.html"], + \["InvalidKeySpecException", "java/security/spec/InvalidKeySpecException.html"], + \["InvalidMarkException", "java/nio/InvalidMarkException.html"], + \["InvalidMidiDataException", "javax/sound/midi/InvalidMidiDataException.html"], + \["InvalidName", "org/omg/CORBA/ORBPackage/InvalidName.html"], + \["InvalidName", "org/omg/CosNaming/NamingContextPackage/InvalidName.html"], + \["InvalidName", "org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidName.html"], + \["InvalidNameException", "javax/naming/InvalidNameException.html"], + \["InvalidNameHelper", "org/omg/CosNaming/NamingContextPackage/InvalidNameHelper.html"], + \["InvalidNameHelper", "org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidNameHelper.html"], + \["InvalidNameHolder", "org/omg/CosNaming/NamingContextPackage/InvalidNameHolder.html"], + \["InvalidObjectException", "java/io/InvalidObjectException.html"], + \["InvalidOpenTypeException", "javax/management/openmbean/InvalidOpenTypeException.html"], + \["InvalidParameterException", "java/security/InvalidParameterException.html"], + \["InvalidParameterSpecException", "java/security/spec/InvalidParameterSpecException.html"], + \["InvalidPolicy", "org/omg/PortableServer/POAPackage/InvalidPolicy.html"], + \["InvalidPolicyHelper", "org/omg/PortableServer/POAPackage/InvalidPolicyHelper.html"], + \["InvalidPreferencesFormatException", "java/util/prefs/InvalidPreferencesFormatException.html"], + \["InvalidPropertiesFormatException", "java/util/InvalidPropertiesFormatException.html"], + \["InvalidRelationIdException", "javax/management/relation/InvalidRelationIdException.html"], + \["InvalidRelationServiceException", "javax/management/relation/InvalidRelationServiceException.html"], + \["InvalidRelationTypeException", "javax/management/relation/InvalidRelationTypeException.html"], + \["InvalidRoleInfoException", "javax/management/relation/InvalidRoleInfoException.html"], + \["InvalidRoleValueException", "javax/management/relation/InvalidRoleValueException.html"], + \["InvalidSearchControlsException", "javax/naming/directory/InvalidSearchControlsException.html"], + \["InvalidSearchFilterException", "javax/naming/directory/InvalidSearchFilterException.html"], + \["InvalidSeq", "org/omg/CORBA/DynAnyPackage/InvalidSeq.html"], + \["InvalidSlot", "org/omg/PortableInterceptor/InvalidSlot.html"], + \["InvalidSlotHelper", "org/omg/PortableInterceptor/InvalidSlotHelper.html"], + \["InvalidTargetObjectTypeException", "javax/management/modelmbean/InvalidTargetObjectTypeException.html"], + \["InvalidTransactionException", "javax/transaction/InvalidTransactionException.html"], + \["InvalidTypeForEncoding", "org/omg/IOP/CodecPackage/InvalidTypeForEncoding.html"], + \["InvalidTypeForEncodingHelper", "org/omg/IOP/CodecPackage/InvalidTypeForEncodingHelper.html"], + \["InvalidValue", "org/omg/CORBA/DynAnyPackage/InvalidValue.html"], + \["InvalidValue", "org/omg/DynamicAny/DynAnyPackage/InvalidValue.html"], + \["InvalidValueHelper", "org/omg/DynamicAny/DynAnyPackage/InvalidValueHelper.html"], + \["Invocable", "javax/script/Invocable.html"], + \["InvocationEvent", "java/awt/event/InvocationEvent.html"], + \["InvocationHandler", "java/lang/reflect/InvocationHandler.html"], + \["InvocationTargetException", "java/lang/reflect/InvocationTargetException.html"], + \["InvokeHandler", "org/omg/CORBA/portable/InvokeHandler.html"], + \["IOError", "java/io/IOError.html"], + \["IOException", "java/io/IOException.html"], + \["IOR", "org/omg/IOP/IOR.html"], + \["IORHelper", "org/omg/IOP/IORHelper.html"], + \["IORHolder", "org/omg/IOP/IORHolder.html"], + \["IORInfo", "org/omg/PortableInterceptor/IORInfo.html"], + \["IORInfoOperations", "org/omg/PortableInterceptor/IORInfoOperations.html"], + \["IORInterceptor", "org/omg/PortableInterceptor/IORInterceptor.html"], + \["IORInterceptor_3_0", "org/omg/PortableInterceptor/IORInterceptor_3_0.html"], + \["IORInterceptor_3_0Helper", "org/omg/PortableInterceptor/IORInterceptor_3_0Helper.html"], + \["IORInterceptor_3_0Holder", "org/omg/PortableInterceptor/IORInterceptor_3_0Holder.html"], + \["IORInterceptor_3_0Operations", "org/omg/PortableInterceptor/IORInterceptor_3_0Operations.html"], + \["IORInterceptorOperations", "org/omg/PortableInterceptor/IORInterceptorOperations.html"], + \["IRObject", "org/omg/CORBA/IRObject.html"], + \["IRObjectOperations", "org/omg/CORBA/IRObjectOperations.html"], + \["IstringHelper", "org/omg/CosNaming/IstringHelper.html"], + \["ItemEvent", "java/awt/event/ItemEvent.html"], + \["ItemListener", "java/awt/event/ItemListener.html"], + \["ItemSelectable", "java/awt/ItemSelectable.html"], + \["Iterable", "java/lang/Iterable.html"], + \["Iterator", "java/util/Iterator.html"], + \["IvParameterSpec", "javax/crypto/spec/IvParameterSpec.html"], + \["JApplet", "javax/swing/JApplet.html"], + \["JarEntry", "java/util/jar/JarEntry.html"], + \["JarException", "java/util/jar/JarException.html"], + \["JarFile", "java/util/jar/JarFile.html"], + \["JarInputStream", "java/util/jar/JarInputStream.html"], + \["JarOutputStream", "java/util/jar/JarOutputStream.html"], + \["JarURLConnection", "java/net/JarURLConnection.html"], + \["JavaCompiler", "javax/tools/JavaCompiler.html"], + \["JavaCompiler.CompilationTask", "javax/tools/JavaCompiler.CompilationTask.html"], + \["JavaFileManager", "javax/tools/JavaFileManager.html"], + \["JavaFileManager.Location", "javax/tools/JavaFileManager.Location.html"], + \["JavaFileObject", "javax/tools/JavaFileObject.html"], + \["JavaFileObject.Kind", "javax/tools/JavaFileObject.Kind.html"], + \["JAXB", "javax/xml/bind/JAXB.html"], + \["JAXBContext", "javax/xml/bind/JAXBContext.html"], + \["JAXBElement", "javax/xml/bind/JAXBElement.html"], + \["JAXBElement.GlobalScope", "javax/xml/bind/JAXBElement.GlobalScope.html"], + \["JAXBException", "javax/xml/bind/JAXBException.html"], + \["JAXBIntrospector", "javax/xml/bind/JAXBIntrospector.html"], + \["JAXBResult", "javax/xml/bind/util/JAXBResult.html"], + \["JAXBSource", "javax/xml/bind/util/JAXBSource.html"], + \["JButton", "javax/swing/JButton.html"], + \["JCheckBox", "javax/swing/JCheckBox.html"], + \["JCheckBoxMenuItem", "javax/swing/JCheckBoxMenuItem.html"], + \["JColorChooser", "javax/swing/JColorChooser.html"], + \["JComboBox", "javax/swing/JComboBox.html"], + \["JComboBox.KeySelectionManager", "javax/swing/JComboBox.KeySelectionManager.html"], + \["JComponent", "javax/swing/JComponent.html"], + \["JdbcRowSet", "javax/sql/rowset/JdbcRowSet.html"], + \["JDesktopPane", "javax/swing/JDesktopPane.html"], + \["JDialog", "javax/swing/JDialog.html"], + \["JEditorPane", "javax/swing/JEditorPane.html"], + \["JFileChooser", "javax/swing/JFileChooser.html"], + \["JFormattedTextField", "javax/swing/JFormattedTextField.html"], + \["JFormattedTextField.AbstractFormatter", "javax/swing/JFormattedTextField.AbstractFormatter.html"], + \["JFormattedTextField.AbstractFormatterFactory", "javax/swing/JFormattedTextField.AbstractFormatterFactory.html"], + \["JFrame", "javax/swing/JFrame.html"], + \["JInternalFrame", "javax/swing/JInternalFrame.html"], + \["JInternalFrame.JDesktopIcon", "javax/swing/JInternalFrame.JDesktopIcon.html"], + \["JLabel", "javax/swing/JLabel.html"], + \["JLayeredPane", "javax/swing/JLayeredPane.html"], + \["JList", "javax/swing/JList.html"], + \["JList.DropLocation", "javax/swing/JList.DropLocation.html"], + \["JMenu", "javax/swing/JMenu.html"], + \["JMenuBar", "javax/swing/JMenuBar.html"], + \["JMenuItem", "javax/swing/JMenuItem.html"], + \["JMException", "javax/management/JMException.html"], + \["JMRuntimeException", "javax/management/JMRuntimeException.html"], + \["JMX", "javax/management/JMX.html"], + \["JMXAddressable", "javax/management/remote/JMXAddressable.html"], + \["JMXAuthenticator", "javax/management/remote/JMXAuthenticator.html"], + \["JMXConnectionNotification", "javax/management/remote/JMXConnectionNotification.html"], + \["JMXConnector", "javax/management/remote/JMXConnector.html"], + \["JMXConnectorFactory", "javax/management/remote/JMXConnectorFactory.html"], + \["JMXConnectorProvider", "javax/management/remote/JMXConnectorProvider.html"], + \["JMXConnectorServer", "javax/management/remote/JMXConnectorServer.html"], + \["JMXConnectorServerFactory", "javax/management/remote/JMXConnectorServerFactory.html"], + \["JMXConnectorServerMBean", "javax/management/remote/JMXConnectorServerMBean.html"], + \["JMXConnectorServerProvider", "javax/management/remote/JMXConnectorServerProvider.html"], + \["JMXPrincipal", "javax/management/remote/JMXPrincipal.html"], + \["JMXProviderException", "javax/management/remote/JMXProviderException.html"], + \["JMXServerErrorException", "javax/management/remote/JMXServerErrorException.html"], + \["JMXServiceURL", "javax/management/remote/JMXServiceURL.html"], + \["JobAttributes", "java/awt/JobAttributes.html"], + \["JobAttributes.DefaultSelectionType", "java/awt/JobAttributes.DefaultSelectionType.html"], + \["JobAttributes.DestinationType", "java/awt/JobAttributes.DestinationType.html"], + \["JobAttributes.DialogType", "java/awt/JobAttributes.DialogType.html"], + \["JobAttributes.MultipleDocumentHandlingType", "java/awt/JobAttributes.MultipleDocumentHandlingType.html"], + \["JobAttributes.SidesType", "java/awt/JobAttributes.SidesType.html"], + \["JobHoldUntil", "javax/print/attribute/standard/JobHoldUntil.html"], + \["JobImpressions", "javax/print/attribute/standard/JobImpressions.html"], + \["JobImpressionsCompleted", "javax/print/attribute/standard/JobImpressionsCompleted.html"], + \["JobImpressionsSupported", "javax/print/attribute/standard/JobImpressionsSupported.html"], + \["JobKOctets", "javax/print/attribute/standard/JobKOctets.html"], + \["JobKOctetsProcessed", "javax/print/attribute/standard/JobKOctetsProcessed.html"], + \["JobKOctetsSupported", "javax/print/attribute/standard/JobKOctetsSupported.html"], + \["JobMediaSheets", "javax/print/attribute/standard/JobMediaSheets.html"], + \["JobMediaSheetsCompleted", "javax/print/attribute/standard/JobMediaSheetsCompleted.html"], + \["JobMediaSheetsSupported", "javax/print/attribute/standard/JobMediaSheetsSupported.html"], + \["JobMessageFromOperator", "javax/print/attribute/standard/JobMessageFromOperator.html"], + \["JobName", "javax/print/attribute/standard/JobName.html"], + \["JobOriginatingUserName", "javax/print/attribute/standard/JobOriginatingUserName.html"], + \["JobPriority", "javax/print/attribute/standard/JobPriority.html"], + \["JobPrioritySupported", "javax/print/attribute/standard/JobPrioritySupported.html"], + \["JobSheets", "javax/print/attribute/standard/JobSheets.html"], + \["JobState", "javax/print/attribute/standard/JobState.html"], + \["JobStateReason", "javax/print/attribute/standard/JobStateReason.html"], + \["JobStateReasons", "javax/print/attribute/standard/JobStateReasons.html"], + \["Joinable", "javax/sql/rowset/Joinable.html"], + \["JoinRowSet", "javax/sql/rowset/JoinRowSet.html"], + \["JOptionPane", "javax/swing/JOptionPane.html"], + \["JPanel", "javax/swing/JPanel.html"], + \["JPasswordField", "javax/swing/JPasswordField.html"], + \["JPEGHuffmanTable", "javax/imageio/plugins/jpeg/JPEGHuffmanTable.html"], + \["JPEGImageReadParam", "javax/imageio/plugins/jpeg/JPEGImageReadParam.html"], + \["JPEGImageWriteParam", "javax/imageio/plugins/jpeg/JPEGImageWriteParam.html"], + \["JPEGQTable", "javax/imageio/plugins/jpeg/JPEGQTable.html"], + \["JPopupMenu", "javax/swing/JPopupMenu.html"], + \["JPopupMenu.Separator", "javax/swing/JPopupMenu.Separator.html"], + \["JProgressBar", "javax/swing/JProgressBar.html"], + \["JRadioButton", "javax/swing/JRadioButton.html"], + \["JRadioButtonMenuItem", "javax/swing/JRadioButtonMenuItem.html"], + \["JRootPane", "javax/swing/JRootPane.html"], + \["JScrollBar", "javax/swing/JScrollBar.html"], + \["JScrollPane", "javax/swing/JScrollPane.html"], + \["JSeparator", "javax/swing/JSeparator.html"], + \["JSlider", "javax/swing/JSlider.html"], + \["JSpinner", "javax/swing/JSpinner.html"], + \["JSpinner.DateEditor", "javax/swing/JSpinner.DateEditor.html"], + \["JSpinner.DefaultEditor", "javax/swing/JSpinner.DefaultEditor.html"], + \["JSpinner.ListEditor", "javax/swing/JSpinner.ListEditor.html"], + \["JSpinner.NumberEditor", "javax/swing/JSpinner.NumberEditor.html"], + \["JSplitPane", "javax/swing/JSplitPane.html"], + \["JTabbedPane", "javax/swing/JTabbedPane.html"], + \["JTable", "javax/swing/JTable.html"], + \["JTable.DropLocation", "javax/swing/JTable.DropLocation.html"], + \["JTable.PrintMode", "javax/swing/JTable.PrintMode.html"], + \["JTableHeader", "javax/swing/table/JTableHeader.html"], + \["JTextArea", "javax/swing/JTextArea.html"], + \["JTextComponent", "javax/swing/text/JTextComponent.html"], + \["JTextComponent.DropLocation", "javax/swing/text/JTextComponent.DropLocation.html"], + \["JTextComponent.KeyBinding", "javax/swing/text/JTextComponent.KeyBinding.html"], + \["JTextField", "javax/swing/JTextField.html"], + \["JTextPane", "javax/swing/JTextPane.html"], + \["JToggleButton", "javax/swing/JToggleButton.html"], + \["JToggleButton.ToggleButtonModel", "javax/swing/JToggleButton.ToggleButtonModel.html"], + \["JToolBar", "javax/swing/JToolBar.html"], + \["JToolBar.Separator", "javax/swing/JToolBar.Separator.html"], + \["JToolTip", "javax/swing/JToolTip.html"], + \["JTree", "javax/swing/JTree.html"], + \["JTree.DropLocation", "javax/swing/JTree.DropLocation.html"], + \["JTree.DynamicUtilTreeNode", "javax/swing/JTree.DynamicUtilTreeNode.html"], + \["JTree.EmptySelectionModel", "javax/swing/JTree.EmptySelectionModel.html"], + \["JViewport", "javax/swing/JViewport.html"], + \["JWindow", "javax/swing/JWindow.html"], + \["KerberosKey", "javax/security/auth/kerberos/KerberosKey.html"], + \["KerberosPrincipal", "javax/security/auth/kerberos/KerberosPrincipal.html"], + \["KerberosTicket", "javax/security/auth/kerberos/KerberosTicket.html"], + \["Kernel", "java/awt/image/Kernel.html"], + \["Key", "java/security/Key.html"], + \["KeyAdapter", "java/awt/event/KeyAdapter.html"], + \["KeyAgreement", "javax/crypto/KeyAgreement.html"], + \["KeyAgreementSpi", "javax/crypto/KeyAgreementSpi.html"], + \["KeyAlreadyExistsException", "javax/management/openmbean/KeyAlreadyExistsException.html"], + \["KeyboardFocusManager", "java/awt/KeyboardFocusManager.html"], + \["KeyEvent", "java/awt/event/KeyEvent.html"], + \["KeyEventDispatcher", "java/awt/KeyEventDispatcher.html"], + \["KeyEventPostProcessor", "java/awt/KeyEventPostProcessor.html"], + \["KeyException", "java/security/KeyException.html"], + \["KeyFactory", "java/security/KeyFactory.html"], + \["KeyFactorySpi", "java/security/KeyFactorySpi.html"], + \["KeyGenerator", "javax/crypto/KeyGenerator.html"], + \["KeyGeneratorSpi", "javax/crypto/KeyGeneratorSpi.html"], + \["KeyInfo", "javax/xml/crypto/dsig/keyinfo/KeyInfo.html"], + \["KeyInfoFactory", "javax/xml/crypto/dsig/keyinfo/KeyInfoFactory.html"], + \["KeyListener", "java/awt/event/KeyListener.html"], + \["KeyManagementException", "java/security/KeyManagementException.html"], + \["KeyManager", "javax/net/ssl/KeyManager.html"], + \["KeyManagerFactory", "javax/net/ssl/KeyManagerFactory.html"], + \["KeyManagerFactorySpi", "javax/net/ssl/KeyManagerFactorySpi.html"], + \["Keymap", "javax/swing/text/Keymap.html"], + \["KeyName", "javax/xml/crypto/dsig/keyinfo/KeyName.html"], + \["KeyPair", "java/security/KeyPair.html"], + \["KeyPairGenerator", "java/security/KeyPairGenerator.html"], + \["KeyPairGeneratorSpi", "java/security/KeyPairGeneratorSpi.html"], + \["KeyRep", "java/security/KeyRep.html"], + \["KeyRep.Type", "java/security/KeyRep.Type.html"], + \["KeySelector", "javax/xml/crypto/KeySelector.html"], + \["KeySelector.Purpose", "javax/xml/crypto/KeySelector.Purpose.html"], + \["KeySelectorException", "javax/xml/crypto/KeySelectorException.html"], + \["KeySelectorResult", "javax/xml/crypto/KeySelectorResult.html"], + \["KeySpec", "java/security/spec/KeySpec.html"], + \["KeyStore", "java/security/KeyStore.html"], + \["KeyStore.Builder", "java/security/KeyStore.Builder.html"], + \["KeyStore.CallbackHandlerProtection", "java/security/KeyStore.CallbackHandlerProtection.html"], + \["KeyStore.Entry", "java/security/KeyStore.Entry.html"], + \["KeyStore.LoadStoreParameter", "java/security/KeyStore.LoadStoreParameter.html"], + \["KeyStore.PasswordProtection", "java/security/KeyStore.PasswordProtection.html"], + \["KeyStore.PrivateKeyEntry", "java/security/KeyStore.PrivateKeyEntry.html"], + \["KeyStore.ProtectionParameter", "java/security/KeyStore.ProtectionParameter.html"], + \["KeyStore.SecretKeyEntry", "java/security/KeyStore.SecretKeyEntry.html"], + \["KeyStore.TrustedCertificateEntry", "java/security/KeyStore.TrustedCertificateEntry.html"], + \["KeyStoreBuilderParameters", "javax/net/ssl/KeyStoreBuilderParameters.html"], + \["KeyStoreException", "java/security/KeyStoreException.html"], + \["KeyStoreSpi", "java/security/KeyStoreSpi.html"], + \["KeyStroke", "javax/swing/KeyStroke.html"], + \["KeyValue", "javax/xml/crypto/dsig/keyinfo/KeyValue.html"], + \["Label", "java/awt/Label.html"], + \["LabelUI", "javax/swing/plaf/LabelUI.html"], + \["LabelView", "javax/swing/text/LabelView.html"], + \["LanguageCallback", "javax/security/auth/callback/LanguageCallback.html"], + \["LastOwnerException", "java/security/acl/LastOwnerException.html"], + \["LayeredHighlighter", "javax/swing/text/LayeredHighlighter.html"], + \["LayeredHighlighter.LayerPainter", "javax/swing/text/LayeredHighlighter.LayerPainter.html"], + \["LayoutFocusTraversalPolicy", "javax/swing/LayoutFocusTraversalPolicy.html"], + \["LayoutManager", "java/awt/LayoutManager.html"], + \["LayoutManager2", "java/awt/LayoutManager2.html"], + \["LayoutPath", "java/awt/font/LayoutPath.html"], + \["LayoutQueue", "javax/swing/text/LayoutQueue.html"], + \["LayoutStyle", "javax/swing/LayoutStyle.html"], + \["LayoutStyle.ComponentPlacement", "javax/swing/LayoutStyle.ComponentPlacement.html"], + \["LDAPCertStoreParameters", "java/security/cert/LDAPCertStoreParameters.html"], + \["LdapContext", "javax/naming/ldap/LdapContext.html"], + \["LdapName", "javax/naming/ldap/LdapName.html"], + \["LdapReferralException", "javax/naming/ldap/LdapReferralException.html"], + \["Lease", "java/rmi/dgc/Lease.html"], + \["Level", "java/util/logging/Level.html"], + \["LexicalHandler", "org/xml/sax/ext/LexicalHandler.html"], + \["LIFESPAN_POLICY_ID", "org/omg/PortableServer/LIFESPAN_POLICY_ID.html"], + \["LifespanPolicy", "org/omg/PortableServer/LifespanPolicy.html"], + \["LifespanPolicyOperations", "org/omg/PortableServer/LifespanPolicyOperations.html"], + \["LifespanPolicyValue", "org/omg/PortableServer/LifespanPolicyValue.html"], + \["LimitExceededException", "javax/naming/LimitExceededException.html"], + \["Line", "javax/sound/sampled/Line.html"], + \["Line.Info", "javax/sound/sampled/Line.Info.html"], + \["Line2D", "java/awt/geom/Line2D.html"], + \["Line2D.Double", "java/awt/geom/Line2D.Double.html"], + \["Line2D.Float", "java/awt/geom/Line2D.Float.html"], + \["LinearGradientPaint", "java/awt/LinearGradientPaint.html"], + \["LineBorder", "javax/swing/border/LineBorder.html"], + \["LineBreakMeasurer", "java/awt/font/LineBreakMeasurer.html"], + \["LineEvent", "javax/sound/sampled/LineEvent.html"], + \["LineEvent.Type", "javax/sound/sampled/LineEvent.Type.html"], + \["LineListener", "javax/sound/sampled/LineListener.html"], + \["LineMetrics", "java/awt/font/LineMetrics.html"], + \["LineNumberInputStream", "java/io/LineNumberInputStream.html"], + \["LineNumberReader", "java/io/LineNumberReader.html"], + \["LineUnavailableException", "javax/sound/sampled/LineUnavailableException.html"], + \["LinkageError", "java/lang/LinkageError.html"], + \["LinkedBlockingDeque", "java/util/concurrent/LinkedBlockingDeque.html"], + \["LinkedBlockingQueue", "java/util/concurrent/LinkedBlockingQueue.html"], + \["LinkedHashMap", "java/util/LinkedHashMap.html"], + \["LinkedHashSet", "java/util/LinkedHashSet.html"], + \["LinkedList", "java/util/LinkedList.html"], + \["LinkException", "javax/naming/LinkException.html"], + \["LinkLoopException", "javax/naming/LinkLoopException.html"], + \["LinkRef", "javax/naming/LinkRef.html"], + \["List", "java/awt/List.html"], + \["List", "java/util/List.html"], + \["ListCellRenderer", "javax/swing/ListCellRenderer.html"], + \["ListDataEvent", "javax/swing/event/ListDataEvent.html"], + \["ListDataListener", "javax/swing/event/ListDataListener.html"], + \["ListenerNotFoundException", "javax/management/ListenerNotFoundException.html"], + \["ListIterator", "java/util/ListIterator.html"], + \["ListModel", "javax/swing/ListModel.html"], + \["ListResourceBundle", "java/util/ListResourceBundle.html"], + \["ListSelectionEvent", "javax/swing/event/ListSelectionEvent.html"], + \["ListSelectionListener", "javax/swing/event/ListSelectionListener.html"], + \["ListSelectionModel", "javax/swing/ListSelectionModel.html"], + \["ListUI", "javax/swing/plaf/ListUI.html"], + \["ListView", "javax/swing/text/html/ListView.html"], + \["LoaderHandler", "java/rmi/server/LoaderHandler.html"], + \["Locale", "java/util/Locale.html"], + \["LocaleNameProvider", "java/util/spi/LocaleNameProvider.html"], + \["LocaleServiceProvider", "java/util/spi/LocaleServiceProvider.html"], + \["LocalObject", "org/omg/CORBA/LocalObject.html"], + \["LocateRegistry", "java/rmi/registry/LocateRegistry.html"], + \["Location", "javax/xml/stream/Location.html"], + \["LOCATION_FORWARD", "org/omg/PortableInterceptor/LOCATION_FORWARD.html"], + \["Locator", "org/xml/sax/Locator.html"], + \["Locator2", "org/xml/sax/ext/Locator2.html"], + \["Locator2Impl", "org/xml/sax/ext/Locator2Impl.html"], + \["LocatorImpl", "org/xml/sax/helpers/LocatorImpl.html"], + \["Lock", "java/util/concurrent/locks/Lock.html"], + \["LockInfo", "java/lang/management/LockInfo.html"], + \["LockSupport", "java/util/concurrent/locks/LockSupport.html"], + \["Logger", "java/util/logging/Logger.html"], + \["LoggingMXBean", "java/util/logging/LoggingMXBean.html"], + \["LoggingPermission", "java/util/logging/LoggingPermission.html"], + \["LogicalHandler", "javax/xml/ws/handler/LogicalHandler.html"], + \["LogicalMessage", "javax/xml/ws/LogicalMessage.html"], + \["LogicalMessageContext", "javax/xml/ws/handler/LogicalMessageContext.html"], + \["LoginContext", "javax/security/auth/login/LoginContext.html"], + \["LoginException", "javax/security/auth/login/LoginException.html"], + \["LoginModule", "javax/security/auth/spi/LoginModule.html"], + \["LogManager", "java/util/logging/LogManager.html"], + \["LogRecord", "java/util/logging/LogRecord.html"], + \["LogStream", "java/rmi/server/LogStream.html"], + \["Long", "java/lang/Long.html"], + \["LongBuffer", "java/nio/LongBuffer.html"], + \["LongHolder", "org/omg/CORBA/LongHolder.html"], + \["LongLongSeqHelper", "org/omg/CORBA/LongLongSeqHelper.html"], + \["LongLongSeqHolder", "org/omg/CORBA/LongLongSeqHolder.html"], + \["LongSeqHelper", "org/omg/CORBA/LongSeqHelper.html"], + \["LongSeqHolder", "org/omg/CORBA/LongSeqHolder.html"], + \["LookAndFeel", "javax/swing/LookAndFeel.html"], + \["LookupOp", "java/awt/image/LookupOp.html"], + \["LookupTable", "java/awt/image/LookupTable.html"], + \["LSException", "org/w3c/dom/ls/LSException.html"], + \["LSInput", "org/w3c/dom/ls/LSInput.html"], + \["LSLoadEvent", "org/w3c/dom/ls/LSLoadEvent.html"], + \["LSOutput", "org/w3c/dom/ls/LSOutput.html"], + \["LSParser", "org/w3c/dom/ls/LSParser.html"], + \["LSParserFilter", "org/w3c/dom/ls/LSParserFilter.html"], + \["LSProgressEvent", "org/w3c/dom/ls/LSProgressEvent.html"], + \["LSResourceResolver", "org/w3c/dom/ls/LSResourceResolver.html"], + \["LSSerializer", "org/w3c/dom/ls/LSSerializer.html"], + \["LSSerializerFilter", "org/w3c/dom/ls/LSSerializerFilter.html"], + \["Mac", "javax/crypto/Mac.html"], + \["MacSpi", "javax/crypto/MacSpi.html"], + \["MailcapCommandMap", "javax/activation/MailcapCommandMap.html"], + \["MalformedInputException", "java/nio/charset/MalformedInputException.html"], + \["MalformedLinkException", "javax/naming/MalformedLinkException.html"], + \["MalformedObjectNameException", "javax/management/MalformedObjectNameException.html"], + \["MalformedParameterizedTypeException", "java/lang/reflect/MalformedParameterizedTypeException.html"], + \["MalformedURLException", "java/net/MalformedURLException.html"], + \["ManagementFactory", "java/lang/management/ManagementFactory.html"], + \["ManagementPermission", "java/lang/management/ManagementPermission.html"], + \["ManageReferralControl", "javax/naming/ldap/ManageReferralControl.html"], + \["ManagerFactoryParameters", "javax/net/ssl/ManagerFactoryParameters.html"], + \["Manifest", "java/util/jar/Manifest.html"], + \["Manifest", "javax/xml/crypto/dsig/Manifest.html"], + \["Map", "java/util/Map.html"], + \["Map.Entry", "java/util/Map.Entry.html"], + \["MappedByteBuffer", "java/nio/MappedByteBuffer.html"], + \["MARSHAL", "org/omg/CORBA/MARSHAL.html"], + \["MarshalException", "java/rmi/MarshalException.html"], + \["MarshalException", "javax/xml/bind/MarshalException.html"], + \["MarshalException", "javax/xml/crypto/MarshalException.html"], + \["MarshalledObject", "java/rmi/MarshalledObject.html"], + \["Marshaller", "javax/xml/bind/Marshaller.html"], + \["Marshaller.Listener", "javax/xml/bind/Marshaller.Listener.html"], + \["MaskFormatter", "javax/swing/text/MaskFormatter.html"], + \["Matcher", "java/util/regex/Matcher.html"], + \["MatchResult", "java/util/regex/MatchResult.html"], + \["Math", "java/lang/Math.html"], + \["MathContext", "java/math/MathContext.html"], + \["MatteBorder", "javax/swing/border/MatteBorder.html"], + \["MBeanAttributeInfo", "javax/management/MBeanAttributeInfo.html"], + \["MBeanConstructorInfo", "javax/management/MBeanConstructorInfo.html"], + \["MBeanException", "javax/management/MBeanException.html"], + \["MBeanFeatureInfo", "javax/management/MBeanFeatureInfo.html"], + \["MBeanInfo", "javax/management/MBeanInfo.html"], + \["MBeanNotificationInfo", "javax/management/MBeanNotificationInfo.html"], + \["MBeanOperationInfo", "javax/management/MBeanOperationInfo.html"], + \["MBeanParameterInfo", "javax/management/MBeanParameterInfo.html"], + \["MBeanPermission", "javax/management/MBeanPermission.html"], + \["MBeanRegistration", "javax/management/MBeanRegistration.html"], + \["MBeanRegistrationException", "javax/management/MBeanRegistrationException.html"], + \["MBeanServer", "javax/management/MBeanServer.html"], + \["MBeanServerBuilder", "javax/management/MBeanServerBuilder.html"], + \["MBeanServerConnection", "javax/management/MBeanServerConnection.html"], + \["MBeanServerDelegate", "javax/management/MBeanServerDelegate.html"], + \["MBeanServerDelegateMBean", "javax/management/MBeanServerDelegateMBean.html"], + \["MBeanServerFactory", "javax/management/MBeanServerFactory.html"], + \["MBeanServerForwarder", "javax/management/remote/MBeanServerForwarder.html"], + \["MBeanServerInvocationHandler", "javax/management/MBeanServerInvocationHandler.html"], + \["MBeanServerNotification", "javax/management/MBeanServerNotification.html"], + \["MBeanServerNotificationFilter", "javax/management/relation/MBeanServerNotificationFilter.html"], + \["MBeanServerPermission", "javax/management/MBeanServerPermission.html"], + \["MBeanTrustPermission", "javax/management/MBeanTrustPermission.html"], + \["Media", "javax/print/attribute/standard/Media.html"], + \["MediaName", "javax/print/attribute/standard/MediaName.html"], + \["MediaPrintableArea", "javax/print/attribute/standard/MediaPrintableArea.html"], + \["MediaSize", "javax/print/attribute/standard/MediaSize.html"], + \["MediaSize.Engineering", "javax/print/attribute/standard/MediaSize.Engineering.html"], + \["MediaSize.ISO", "javax/print/attribute/standard/MediaSize.ISO.html"], + \["MediaSize.JIS", "javax/print/attribute/standard/MediaSize.JIS.html"], + \["MediaSize.NA", "javax/print/attribute/standard/MediaSize.NA.html"], + \["MediaSize.Other", "javax/print/attribute/standard/MediaSize.Other.html"], + \["MediaSizeName", "javax/print/attribute/standard/MediaSizeName.html"], + \["MediaTracker", "java/awt/MediaTracker.html"], + \["MediaTray", "javax/print/attribute/standard/MediaTray.html"], + \["Member", "java/lang/reflect/Member.html"], + \["MemoryCacheImageInputStream", "javax/imageio/stream/MemoryCacheImageInputStream.html"], + \["MemoryCacheImageOutputStream", "javax/imageio/stream/MemoryCacheImageOutputStream.html"], + \["MemoryHandler", "java/util/logging/MemoryHandler.html"], + \["MemoryImageSource", "java/awt/image/MemoryImageSource.html"], + \["MemoryManagerMXBean", "java/lang/management/MemoryManagerMXBean.html"], + \["MemoryMXBean", "java/lang/management/MemoryMXBean.html"], + \["MemoryNotificationInfo", "java/lang/management/MemoryNotificationInfo.html"], + \["MemoryPoolMXBean", "java/lang/management/MemoryPoolMXBean.html"], + \["MemoryType", "java/lang/management/MemoryType.html"], + \["MemoryUsage", "java/lang/management/MemoryUsage.html"], + \["Menu", "java/awt/Menu.html"], + \["MenuBar", "java/awt/MenuBar.html"], + \["MenuBarUI", "javax/swing/plaf/MenuBarUI.html"], + \["MenuComponent", "java/awt/MenuComponent.html"], + \["MenuContainer", "java/awt/MenuContainer.html"], + \["MenuDragMouseEvent", "javax/swing/event/MenuDragMouseEvent.html"], + \["MenuDragMouseListener", "javax/swing/event/MenuDragMouseListener.html"], + \["MenuElement", "javax/swing/MenuElement.html"], + \["MenuEvent", "javax/swing/event/MenuEvent.html"], + \["MenuItem", "java/awt/MenuItem.html"], + \["MenuItemUI", "javax/swing/plaf/MenuItemUI.html"], + \["MenuKeyEvent", "javax/swing/event/MenuKeyEvent.html"], + \["MenuKeyListener", "javax/swing/event/MenuKeyListener.html"], + \["MenuListener", "javax/swing/event/MenuListener.html"], + \["MenuSelectionManager", "javax/swing/MenuSelectionManager.html"], + \["MenuShortcut", "java/awt/MenuShortcut.html"], + \["MessageContext", "javax/xml/ws/handler/MessageContext.html"], + \["MessageContext.Scope", "javax/xml/ws/handler/MessageContext.Scope.html"], + \["MessageDigest", "java/security/MessageDigest.html"], + \["MessageDigestSpi", "java/security/MessageDigestSpi.html"], + \["MessageFactory", "javax/xml/soap/MessageFactory.html"], + \["MessageFormat", "java/text/MessageFormat.html"], + \["MessageFormat.Field", "java/text/MessageFormat.Field.html"], + \["MessageProp", "org/ietf/jgss/MessageProp.html"], + \["Messager", "javax/annotation/processing/Messager.html"], + \["MetaEventListener", "javax/sound/midi/MetaEventListener.html"], + \["MetalBorders", "javax/swing/plaf/metal/MetalBorders.html"], + \["MetalBorders.ButtonBorder", "javax/swing/plaf/metal/MetalBorders.ButtonBorder.html"], + \["MetalBorders.Flush3DBorder", "javax/swing/plaf/metal/MetalBorders.Flush3DBorder.html"], + \["MetalBorders.InternalFrameBorder", "javax/swing/plaf/metal/MetalBorders.InternalFrameBorder.html"], + \["MetalBorders.MenuBarBorder", "javax/swing/plaf/metal/MetalBorders.MenuBarBorder.html"], + \["MetalBorders.MenuItemBorder", "javax/swing/plaf/metal/MetalBorders.MenuItemBorder.html"], + \["MetalBorders.OptionDialogBorder", "javax/swing/plaf/metal/MetalBorders.OptionDialogBorder.html"], + \["MetalBorders.PaletteBorder", "javax/swing/plaf/metal/MetalBorders.PaletteBorder.html"], + \["MetalBorders.PopupMenuBorder", "javax/swing/plaf/metal/MetalBorders.PopupMenuBorder.html"], + \["MetalBorders.RolloverButtonBorder", "javax/swing/plaf/metal/MetalBorders.RolloverButtonBorder.html"], + \["MetalBorders.ScrollPaneBorder", "javax/swing/plaf/metal/MetalBorders.ScrollPaneBorder.html"], + \["MetalBorders.TableHeaderBorder", "javax/swing/plaf/metal/MetalBorders.TableHeaderBorder.html"], + \["MetalBorders.TextFieldBorder", "javax/swing/plaf/metal/MetalBorders.TextFieldBorder.html"], + \["MetalBorders.ToggleButtonBorder", "javax/swing/plaf/metal/MetalBorders.ToggleButtonBorder.html"], + \["MetalBorders.ToolBarBorder", "javax/swing/plaf/metal/MetalBorders.ToolBarBorder.html"], + \["MetalButtonUI", "javax/swing/plaf/metal/MetalButtonUI.html"], + \["MetalCheckBoxIcon", "javax/swing/plaf/metal/MetalCheckBoxIcon.html"], + \["MetalCheckBoxUI", "javax/swing/plaf/metal/MetalCheckBoxUI.html"], + \["MetalComboBoxButton", "javax/swing/plaf/metal/MetalComboBoxButton.html"], + \["MetalComboBoxEditor", "javax/swing/plaf/metal/MetalComboBoxEditor.html"], + \["MetalComboBoxEditor.UIResource", "javax/swing/plaf/metal/MetalComboBoxEditor.UIResource.html"], + \["MetalComboBoxIcon", "javax/swing/plaf/metal/MetalComboBoxIcon.html"], + \["MetalComboBoxUI", "javax/swing/plaf/metal/MetalComboBoxUI.html"], + \["MetalDesktopIconUI", "javax/swing/plaf/metal/MetalDesktopIconUI.html"], + \["MetalFileChooserUI", "javax/swing/plaf/metal/MetalFileChooserUI.html"], + \["MetalIconFactory", "javax/swing/plaf/metal/MetalIconFactory.html"], + \["MetalIconFactory.FileIcon16", "javax/swing/plaf/metal/MetalIconFactory.FileIcon16.html"], + \["MetalIconFactory.FolderIcon16", "javax/swing/plaf/metal/MetalIconFactory.FolderIcon16.html"], + \["MetalIconFactory.PaletteCloseIcon", "javax/swing/plaf/metal/MetalIconFactory.PaletteCloseIcon.html"], + \["MetalIconFactory.TreeControlIcon", "javax/swing/plaf/metal/MetalIconFactory.TreeControlIcon.html"], + \["MetalIconFactory.TreeFolderIcon", "javax/swing/plaf/metal/MetalIconFactory.TreeFolderIcon.html"], + \["MetalIconFactory.TreeLeafIcon", "javax/swing/plaf/metal/MetalIconFactory.TreeLeafIcon.html"], + \["MetalInternalFrameTitlePane", "javax/swing/plaf/metal/MetalInternalFrameTitlePane.html"], + \["MetalInternalFrameUI", "javax/swing/plaf/metal/MetalInternalFrameUI.html"], + \["MetalLabelUI", "javax/swing/plaf/metal/MetalLabelUI.html"], + \["MetalLookAndFeel", "javax/swing/plaf/metal/MetalLookAndFeel.html"], + \["MetalMenuBarUI", "javax/swing/plaf/metal/MetalMenuBarUI.html"], + \["MetalPopupMenuSeparatorUI", "javax/swing/plaf/metal/MetalPopupMenuSeparatorUI.html"], + \["MetalProgressBarUI", "javax/swing/plaf/metal/MetalProgressBarUI.html"], + \["MetalRadioButtonUI", "javax/swing/plaf/metal/MetalRadioButtonUI.html"], + \["MetalRootPaneUI", "javax/swing/plaf/metal/MetalRootPaneUI.html"], + \["MetalScrollBarUI", "javax/swing/plaf/metal/MetalScrollBarUI.html"], + \["MetalScrollButton", "javax/swing/plaf/metal/MetalScrollButton.html"], + \["MetalScrollPaneUI", "javax/swing/plaf/metal/MetalScrollPaneUI.html"], + \["MetalSeparatorUI", "javax/swing/plaf/metal/MetalSeparatorUI.html"], + \["MetalSliderUI", "javax/swing/plaf/metal/MetalSliderUI.html"], + \["MetalSplitPaneUI", "javax/swing/plaf/metal/MetalSplitPaneUI.html"], + \["MetalTabbedPaneUI", "javax/swing/plaf/metal/MetalTabbedPaneUI.html"], + \["MetalTextFieldUI", "javax/swing/plaf/metal/MetalTextFieldUI.html"], + \["MetalTheme", "javax/swing/plaf/metal/MetalTheme.html"], + \["MetalToggleButtonUI", "javax/swing/plaf/metal/MetalToggleButtonUI.html"], + \["MetalToolBarUI", "javax/swing/plaf/metal/MetalToolBarUI.html"], + \["MetalToolTipUI", "javax/swing/plaf/metal/MetalToolTipUI.html"], + \["MetalTreeUI", "javax/swing/plaf/metal/MetalTreeUI.html"], + \["MetaMessage", "javax/sound/midi/MetaMessage.html"], + \["Method", "java/lang/reflect/Method.html"], + \["MethodDescriptor", "java/beans/MethodDescriptor.html"], + \["MGF1ParameterSpec", "java/security/spec/MGF1ParameterSpec.html"], + \["MidiChannel", "javax/sound/midi/MidiChannel.html"], + \["MidiDevice", "javax/sound/midi/MidiDevice.html"], + \["MidiDevice.Info", "javax/sound/midi/MidiDevice.Info.html"], + \["MidiDeviceProvider", "javax/sound/midi/spi/MidiDeviceProvider.html"], + \["MidiEvent", "javax/sound/midi/MidiEvent.html"], + \["MidiFileFormat", "javax/sound/midi/MidiFileFormat.html"], + \["MidiFileReader", "javax/sound/midi/spi/MidiFileReader.html"], + \["MidiFileWriter", "javax/sound/midi/spi/MidiFileWriter.html"], + \["MidiMessage", "javax/sound/midi/MidiMessage.html"], + \["MidiSystem", "javax/sound/midi/MidiSystem.html"], + \["MidiUnavailableException", "javax/sound/midi/MidiUnavailableException.html"], + \["MimeHeader", "javax/xml/soap/MimeHeader.html"], + \["MimeHeaders", "javax/xml/soap/MimeHeaders.html"], + \["MimeType", "javax/activation/MimeType.html"], + \["MimeTypeParameterList", "javax/activation/MimeTypeParameterList.html"], + \["MimeTypeParseException", "java/awt/datatransfer/MimeTypeParseException.html"], + \["MimeTypeParseException", "javax/activation/MimeTypeParseException.html"], + \["MimetypesFileTypeMap", "javax/activation/MimetypesFileTypeMap.html"], + \["MinimalHTMLWriter", "javax/swing/text/html/MinimalHTMLWriter.html"], + \["MirroredTypeException", "javax/lang/model/type/MirroredTypeException.html"], + \["MirroredTypesException", "javax/lang/model/type/MirroredTypesException.html"], + \["MissingFormatArgumentException", "java/util/MissingFormatArgumentException.html"], + \["MissingFormatWidthException", "java/util/MissingFormatWidthException.html"], + \["MissingResourceException", "java/util/MissingResourceException.html"], + \["Mixer", "javax/sound/sampled/Mixer.html"], + \["Mixer.Info", "javax/sound/sampled/Mixer.Info.html"], + \["MixerProvider", "javax/sound/sampled/spi/MixerProvider.html"], + \["MLet", "javax/management/loading/MLet.html"], + \["MLetContent", "javax/management/loading/MLetContent.html"], + \["MLetMBean", "javax/management/loading/MLetMBean.html"], + \["ModelMBean", "javax/management/modelmbean/ModelMBean.html"], + \["ModelMBeanAttributeInfo", "javax/management/modelmbean/ModelMBeanAttributeInfo.html"], + \["ModelMBeanConstructorInfo", "javax/management/modelmbean/ModelMBeanConstructorInfo.html"], + \["ModelMBeanInfo", "javax/management/modelmbean/ModelMBeanInfo.html"], + \["ModelMBeanInfoSupport", "javax/management/modelmbean/ModelMBeanInfoSupport.html"], + \["ModelMBeanNotificationBroadcaster", "javax/management/modelmbean/ModelMBeanNotificationBroadcaster.html"], + \["ModelMBeanNotificationInfo", "javax/management/modelmbean/ModelMBeanNotificationInfo.html"], + \["ModelMBeanOperationInfo", "javax/management/modelmbean/ModelMBeanOperationInfo.html"], + \["ModificationItem", "javax/naming/directory/ModificationItem.html"], + \["Modifier", "java/lang/reflect/Modifier.html"], + \["Modifier", "javax/lang/model/element/Modifier.html"], + \["Monitor", "javax/management/monitor/Monitor.html"], + \["MonitorInfo", "java/lang/management/MonitorInfo.html"], + \["MonitorMBean", "javax/management/monitor/MonitorMBean.html"], + \["MonitorNotification", "javax/management/monitor/MonitorNotification.html"], + \["MonitorSettingException", "javax/management/monitor/MonitorSettingException.html"], + \["MouseAdapter", "java/awt/event/MouseAdapter.html"], + \["MouseDragGestureRecognizer", "java/awt/dnd/MouseDragGestureRecognizer.html"], + \["MouseEvent", "java/awt/event/MouseEvent.html"], + \["MouseEvent", "org/w3c/dom/events/MouseEvent.html"], + \["MouseInfo", "java/awt/MouseInfo.html"], + \["MouseInputAdapter", "javax/swing/event/MouseInputAdapter.html"], + \["MouseInputListener", "javax/swing/event/MouseInputListener.html"], + \["MouseListener", "java/awt/event/MouseListener.html"], + \["MouseMotionAdapter", "java/awt/event/MouseMotionAdapter.html"], + \["MouseMotionListener", "java/awt/event/MouseMotionListener.html"], + \["MouseWheelEvent", "java/awt/event/MouseWheelEvent.html"], + \["MouseWheelListener", "java/awt/event/MouseWheelListener.html"], + \["MTOM", "javax/xml/ws/soap/MTOM.html"], + \["MTOMFeature", "javax/xml/ws/soap/MTOMFeature.html"], + \["MultiButtonUI", "javax/swing/plaf/multi/MultiButtonUI.html"], + \["MulticastSocket", "java/net/MulticastSocket.html"], + \["MultiColorChooserUI", "javax/swing/plaf/multi/MultiColorChooserUI.html"], + \["MultiComboBoxUI", "javax/swing/plaf/multi/MultiComboBoxUI.html"], + \["MultiDesktopIconUI", "javax/swing/plaf/multi/MultiDesktopIconUI.html"], + \["MultiDesktopPaneUI", "javax/swing/plaf/multi/MultiDesktopPaneUI.html"], + \["MultiDoc", "javax/print/MultiDoc.html"], + \["MultiDocPrintJob", "javax/print/MultiDocPrintJob.html"], + \["MultiDocPrintService", "javax/print/MultiDocPrintService.html"], + \["MultiFileChooserUI", "javax/swing/plaf/multi/MultiFileChooserUI.html"], + \["MultiInternalFrameUI", "javax/swing/plaf/multi/MultiInternalFrameUI.html"], + \["MultiLabelUI", "javax/swing/plaf/multi/MultiLabelUI.html"], + \["MultiListUI", "javax/swing/plaf/multi/MultiListUI.html"], + \["MultiLookAndFeel", "javax/swing/plaf/multi/MultiLookAndFeel.html"], + \["MultiMenuBarUI", "javax/swing/plaf/multi/MultiMenuBarUI.html"], + \["MultiMenuItemUI", "javax/swing/plaf/multi/MultiMenuItemUI.html"], + \["MultiOptionPaneUI", "javax/swing/plaf/multi/MultiOptionPaneUI.html"], + \["MultiPanelUI", "javax/swing/plaf/multi/MultiPanelUI.html"], + \["MultiPixelPackedSampleModel", "java/awt/image/MultiPixelPackedSampleModel.html"], + \["MultipleComponentProfileHelper", "org/omg/IOP/MultipleComponentProfileHelper.html"], + \["MultipleComponentProfileHolder", "org/omg/IOP/MultipleComponentProfileHolder.html"], + \["MultipleDocumentHandling", "javax/print/attribute/standard/MultipleDocumentHandling.html"], + \["MultipleGradientPaint", "java/awt/MultipleGradientPaint.html"], + \["MultipleGradientPaint.ColorSpaceType", "java/awt/MultipleGradientPaint.ColorSpaceType.html"], + \["MultipleGradientPaint.CycleMethod", "java/awt/MultipleGradientPaint.CycleMethod.html"], + \["MultipleMaster", "java/awt/font/MultipleMaster.html"], + \["MultiPopupMenuUI", "javax/swing/plaf/multi/MultiPopupMenuUI.html"], + \["MultiProgressBarUI", "javax/swing/plaf/multi/MultiProgressBarUI.html"], + \["MultiRootPaneUI", "javax/swing/plaf/multi/MultiRootPaneUI.html"], + \["MultiScrollBarUI", "javax/swing/plaf/multi/MultiScrollBarUI.html"], + \["MultiScrollPaneUI", "javax/swing/plaf/multi/MultiScrollPaneUI.html"], + \["MultiSeparatorUI", "javax/swing/plaf/multi/MultiSeparatorUI.html"], + \["MultiSliderUI", "javax/swing/plaf/multi/MultiSliderUI.html"], + \["MultiSpinnerUI", "javax/swing/plaf/multi/MultiSpinnerUI.html"], + \["MultiSplitPaneUI", "javax/swing/plaf/multi/MultiSplitPaneUI.html"], + \["MultiTabbedPaneUI", "javax/swing/plaf/multi/MultiTabbedPaneUI.html"], + \["MultiTableHeaderUI", "javax/swing/plaf/multi/MultiTableHeaderUI.html"], + \["MultiTableUI", "javax/swing/plaf/multi/MultiTableUI.html"], + \["MultiTextUI", "javax/swing/plaf/multi/MultiTextUI.html"], + \["MultiToolBarUI", "javax/swing/plaf/multi/MultiToolBarUI.html"], + \["MultiToolTipUI", "javax/swing/plaf/multi/MultiToolTipUI.html"], + \["MultiTreeUI", "javax/swing/plaf/multi/MultiTreeUI.html"], + \["MultiViewportUI", "javax/swing/plaf/multi/MultiViewportUI.html"], + \["MutableAttributeSet", "javax/swing/text/MutableAttributeSet.html"], + \["MutableComboBoxModel", "javax/swing/MutableComboBoxModel.html"], + \["MutableTreeNode", "javax/swing/tree/MutableTreeNode.html"], + \["MutationEvent", "org/w3c/dom/events/MutationEvent.html"], + \["MXBean", "javax/management/MXBean.html"], + \["Name", "javax/lang/model/element/Name.html"], + \["Name", "javax/naming/Name.html"], + \["Name", "javax/xml/soap/Name.html"], + \["NameAlreadyBoundException", "javax/naming/NameAlreadyBoundException.html"], + \["NameCallback", "javax/security/auth/callback/NameCallback.html"], + \["NameClassPair", "javax/naming/NameClassPair.html"], + \["NameComponent", "org/omg/CosNaming/NameComponent.html"], + \["NameComponentHelper", "org/omg/CosNaming/NameComponentHelper.html"], + \["NameComponentHolder", "org/omg/CosNaming/NameComponentHolder.html"], + \["NamedNodeMap", "org/w3c/dom/NamedNodeMap.html"], + \["NamedValue", "org/omg/CORBA/NamedValue.html"], + \["NameDynAnyPair", "org/omg/DynamicAny/NameDynAnyPair.html"], + \["NameDynAnyPairHelper", "org/omg/DynamicAny/NameDynAnyPairHelper.html"], + \["NameDynAnyPairSeqHelper", "org/omg/DynamicAny/NameDynAnyPairSeqHelper.html"], + \["NameHelper", "org/omg/CosNaming/NameHelper.html"], + \["NameHolder", "org/omg/CosNaming/NameHolder.html"], + \["NameList", "org/w3c/dom/NameList.html"], + \["NameNotFoundException", "javax/naming/NameNotFoundException.html"], + \["NameParser", "javax/naming/NameParser.html"], + \["Namespace", "javax/xml/stream/events/Namespace.html"], + \["NamespaceChangeListener", "javax/naming/event/NamespaceChangeListener.html"], + \["NamespaceContext", "javax/xml/namespace/NamespaceContext.html"], + \["NamespaceSupport", "org/xml/sax/helpers/NamespaceSupport.html"], + \["NameValuePair", "org/omg/CORBA/NameValuePair.html"], + \["NameValuePair", "org/omg/DynamicAny/NameValuePair.html"], + \["NameValuePairHelper", "org/omg/CORBA/NameValuePairHelper.html"], + \["NameValuePairHelper", "org/omg/DynamicAny/NameValuePairHelper.html"], + \["NameValuePairSeqHelper", "org/omg/DynamicAny/NameValuePairSeqHelper.html"], + \["Naming", "java/rmi/Naming.html"], + \["NamingContext", "org/omg/CosNaming/NamingContext.html"], + \["NamingContextExt", "org/omg/CosNaming/NamingContextExt.html"], + \["NamingContextExtHelper", "org/omg/CosNaming/NamingContextExtHelper.html"], + \["NamingContextExtHolder", "org/omg/CosNaming/NamingContextExtHolder.html"], + \["NamingContextExtOperations", "org/omg/CosNaming/NamingContextExtOperations.html"], + \["NamingContextExtPOA", "org/omg/CosNaming/NamingContextExtPOA.html"], + \["NamingContextHelper", "org/omg/CosNaming/NamingContextHelper.html"], + \["NamingContextHolder", "org/omg/CosNaming/NamingContextHolder.html"], + \["NamingContextOperations", "org/omg/CosNaming/NamingContextOperations.html"], + \["NamingContextPOA", "org/omg/CosNaming/NamingContextPOA.html"], + \["NamingEnumeration", "javax/naming/NamingEnumeration.html"], + \["NamingEvent", "javax/naming/event/NamingEvent.html"], + \["NamingException", "javax/naming/NamingException.html"], + \["NamingExceptionEvent", "javax/naming/event/NamingExceptionEvent.html"], + \["NamingListener", "javax/naming/event/NamingListener.html"], + \["NamingManager", "javax/naming/spi/NamingManager.html"], + \["NamingSecurityException", "javax/naming/NamingSecurityException.html"], + \["NavigableMap", "java/util/NavigableMap.html"], + \["NavigableSet", "java/util/NavigableSet.html"], + \["NavigationFilter", "javax/swing/text/NavigationFilter.html"], + \["NavigationFilter.FilterBypass", "javax/swing/text/NavigationFilter.FilterBypass.html"], + \["NClob", "java/sql/NClob.html"], + \["NegativeArraySizeException", "java/lang/NegativeArraySizeException.html"], + \["NestingKind", "javax/lang/model/element/NestingKind.html"], + \["NetPermission", "java/net/NetPermission.html"], + \["NetworkInterface", "java/net/NetworkInterface.html"], + \["NO_IMPLEMENT", "org/omg/CORBA/NO_IMPLEMENT.html"], + \["NO_MEMORY", "org/omg/CORBA/NO_MEMORY.html"], + \["NO_PERMISSION", "org/omg/CORBA/NO_PERMISSION.html"], + \["NO_RESOURCES", "org/omg/CORBA/NO_RESOURCES.html"], + \["NO_RESPONSE", "org/omg/CORBA/NO_RESPONSE.html"], + \["NoClassDefFoundError", "java/lang/NoClassDefFoundError.html"], + \["NoConnectionPendingException", "java/nio/channels/NoConnectionPendingException.html"], + \["NoContext", "org/omg/PortableServer/CurrentPackage/NoContext.html"], + \["NoContextHelper", "org/omg/PortableServer/CurrentPackage/NoContextHelper.html"], + \["Node", "javax/xml/soap/Node.html"], + \["Node", "org/w3c/dom/Node.html"], + \["NodeChangeEvent", "java/util/prefs/NodeChangeEvent.html"], + \["NodeChangeListener", "java/util/prefs/NodeChangeListener.html"], + \["NodeList", "org/w3c/dom/NodeList.html"], + \["NodeSetData", "javax/xml/crypto/NodeSetData.html"], + \["NoInitialContextException", "javax/naming/NoInitialContextException.html"], + \["NON_EXISTENT", "org/omg/PortableInterceptor/NON_EXISTENT.html"], + \["NoninvertibleTransformException", "java/awt/geom/NoninvertibleTransformException.html"], + \["NonReadableChannelException", "java/nio/channels/NonReadableChannelException.html"], + \["NonWritableChannelException", "java/nio/channels/NonWritableChannelException.html"], + \["NoPermissionException", "javax/naming/NoPermissionException.html"], + \["NormalizedStringAdapter", "javax/xml/bind/annotation/adapters/NormalizedStringAdapter.html"], + \["Normalizer", "java/text/Normalizer.html"], + \["Normalizer.Form", "java/text/Normalizer.Form.html"], + \["NoRouteToHostException", "java/net/NoRouteToHostException.html"], + \["NoServant", "org/omg/PortableServer/POAPackage/NoServant.html"], + \["NoServantHelper", "org/omg/PortableServer/POAPackage/NoServantHelper.html"], + \["NoSuchAlgorithmException", "java/security/NoSuchAlgorithmException.html"], + \["NoSuchAttributeException", "javax/naming/directory/NoSuchAttributeException.html"], + \["NoSuchElementException", "java/util/NoSuchElementException.html"], + \["NoSuchFieldError", "java/lang/NoSuchFieldError.html"], + \["NoSuchFieldException", "java/lang/NoSuchFieldException.html"], + \["NoSuchMechanismException", "javax/xml/crypto/NoSuchMechanismException.html"], + \["NoSuchMethodError", "java/lang/NoSuchMethodError.html"], + \["NoSuchMethodException", "java/lang/NoSuchMethodException.html"], + \["NoSuchObjectException", "java/rmi/NoSuchObjectException.html"], + \["NoSuchPaddingException", "javax/crypto/NoSuchPaddingException.html"], + \["NoSuchProviderException", "java/security/NoSuchProviderException.html"], + \["NotActiveException", "java/io/NotActiveException.html"], + \["Notation", "org/w3c/dom/Notation.html"], + \["NotationDeclaration", "javax/xml/stream/events/NotationDeclaration.html"], + \["NotBoundException", "java/rmi/NotBoundException.html"], + \["NotCompliantMBeanException", "javax/management/NotCompliantMBeanException.html"], + \["NotContextException", "javax/naming/NotContextException.html"], + \["NotEmpty", "org/omg/CosNaming/NamingContextPackage/NotEmpty.html"], + \["NotEmptyHelper", "org/omg/CosNaming/NamingContextPackage/NotEmptyHelper.html"], + \["NotEmptyHolder", "org/omg/CosNaming/NamingContextPackage/NotEmptyHolder.html"], + \["NotFound", "org/omg/CosNaming/NamingContextPackage/NotFound.html"], + \["NotFoundHelper", "org/omg/CosNaming/NamingContextPackage/NotFoundHelper.html"], + \["NotFoundHolder", "org/omg/CosNaming/NamingContextPackage/NotFoundHolder.html"], + \["NotFoundReason", "org/omg/CosNaming/NamingContextPackage/NotFoundReason.html"], + \["NotFoundReasonHelper", "org/omg/CosNaming/NamingContextPackage/NotFoundReasonHelper.html"], + \["NotFoundReasonHolder", "org/omg/CosNaming/NamingContextPackage/NotFoundReasonHolder.html"], + \["NotIdentifiableEvent", "javax/xml/bind/NotIdentifiableEvent.html"], + \["NotIdentifiableEventImpl", "javax/xml/bind/helpers/NotIdentifiableEventImpl.html"], + \["Notification", "javax/management/Notification.html"], + \["NotificationBroadcaster", "javax/management/NotificationBroadcaster.html"], + \["NotificationBroadcasterSupport", "javax/management/NotificationBroadcasterSupport.html"], + \["NotificationEmitter", "javax/management/NotificationEmitter.html"], + \["NotificationFilter", "javax/management/NotificationFilter.html"], + \["NotificationFilterSupport", "javax/management/NotificationFilterSupport.html"], + \["NotificationListener", "javax/management/NotificationListener.html"], + \["NotificationResult", "javax/management/remote/NotificationResult.html"], + \["NotOwnerException", "java/security/acl/NotOwnerException.html"], + \["NotSerializableException", "java/io/NotSerializableException.html"], + \["NotYetBoundException", "java/nio/channels/NotYetBoundException.html"], + \["NotYetConnectedException", "java/nio/channels/NotYetConnectedException.html"], + \["NoType", "javax/lang/model/type/NoType.html"], + \["NullCipher", "javax/crypto/NullCipher.html"], + \["NullPointerException", "java/lang/NullPointerException.html"], + \["NullType", "javax/lang/model/type/NullType.html"], + \["Number", "java/lang/Number.html"], + \["NumberFormat", "java/text/NumberFormat.html"], + \["NumberFormat.Field", "java/text/NumberFormat.Field.html"], + \["NumberFormatException", "java/lang/NumberFormatException.html"], + \["NumberFormatProvider", "java/text/spi/NumberFormatProvider.html"], + \["NumberFormatter", "javax/swing/text/NumberFormatter.html"], + \["NumberOfDocuments", "javax/print/attribute/standard/NumberOfDocuments.html"], + \["NumberOfInterveningJobs", "javax/print/attribute/standard/NumberOfInterveningJobs.html"], + \["NumberUp", "javax/print/attribute/standard/NumberUp.html"], + \["NumberUpSupported", "javax/print/attribute/standard/NumberUpSupported.html"], + \["NumericShaper", "java/awt/font/NumericShaper.html"], + \["NVList", "org/omg/CORBA/NVList.html"], + \["OAEPParameterSpec", "javax/crypto/spec/OAEPParameterSpec.html"], + \["OBJ_ADAPTER", "org/omg/CORBA/OBJ_ADAPTER.html"], + \["Object", "java/lang/Object.html"], + \["Object", "org/omg/CORBA/Object.html"], + \["OBJECT_NOT_EXIST", "org/omg/CORBA/OBJECT_NOT_EXIST.html"], + \["ObjectAlreadyActive", "org/omg/PortableServer/POAPackage/ObjectAlreadyActive.html"], + \["ObjectAlreadyActiveHelper", "org/omg/PortableServer/POAPackage/ObjectAlreadyActiveHelper.html"], + \["ObjectChangeListener", "javax/naming/event/ObjectChangeListener.html"], + \["ObjectFactory", "javax/naming/spi/ObjectFactory.html"], + \["ObjectFactoryBuilder", "javax/naming/spi/ObjectFactoryBuilder.html"], + \["ObjectHelper", "org/omg/CORBA/ObjectHelper.html"], + \["ObjectHolder", "org/omg/CORBA/ObjectHolder.html"], + \["ObjectIdHelper", "org/omg/PortableInterceptor/ObjectIdHelper.html"], + \["ObjectIdHelper", "org/omg/PortableInterceptor/ORBInitInfoPackage/ObjectIdHelper.html"], + \["ObjectImpl", "org/omg/CORBA/portable/ObjectImpl.html"], + \["ObjectImpl", "org/omg/CORBA_2_3/portable/ObjectImpl.html"], + \["ObjectInput", "java/io/ObjectInput.html"], + \["ObjectInputStream", "java/io/ObjectInputStream.html"], + \["ObjectInputStream.GetField", "java/io/ObjectInputStream.GetField.html"], + \["ObjectInputValidation", "java/io/ObjectInputValidation.html"], + \["ObjectInstance", "javax/management/ObjectInstance.html"], + \["ObjectName", "javax/management/ObjectName.html"], + \["ObjectNotActive", "org/omg/PortableServer/POAPackage/ObjectNotActive.html"], + \["ObjectNotActiveHelper", "org/omg/PortableServer/POAPackage/ObjectNotActiveHelper.html"], + \["ObjectOutput", "java/io/ObjectOutput.html"], + \["ObjectOutputStream", "java/io/ObjectOutputStream.html"], + \["ObjectOutputStream.PutField", "java/io/ObjectOutputStream.PutField.html"], + \["ObjectReferenceFactory", "org/omg/PortableInterceptor/ObjectReferenceFactory.html"], + \["ObjectReferenceFactoryHelper", "org/omg/PortableInterceptor/ObjectReferenceFactoryHelper.html"], + \["ObjectReferenceFactoryHolder", "org/omg/PortableInterceptor/ObjectReferenceFactoryHolder.html"], + \["ObjectReferenceTemplate", "org/omg/PortableInterceptor/ObjectReferenceTemplate.html"], + \["ObjectReferenceTemplateHelper", "org/omg/PortableInterceptor/ObjectReferenceTemplateHelper.html"], + \["ObjectReferenceTemplateHolder", "org/omg/PortableInterceptor/ObjectReferenceTemplateHolder.html"], + \["ObjectReferenceTemplateSeqHelper", "org/omg/PortableInterceptor/ObjectReferenceTemplateSeqHelper.html"], + \["ObjectReferenceTemplateSeqHolder", "org/omg/PortableInterceptor/ObjectReferenceTemplateSeqHolder.html"], + \["ObjectStreamClass", "java/io/ObjectStreamClass.html"], + \["ObjectStreamConstants", "java/io/ObjectStreamConstants.html"], + \["ObjectStreamException", "java/io/ObjectStreamException.html"], + \["ObjectStreamField", "java/io/ObjectStreamField.html"], + \["ObjectView", "javax/swing/text/html/ObjectView.html"], + \["ObjID", "java/rmi/server/ObjID.html"], + \["Observable", "java/util/Observable.html"], + \["Observer", "java/util/Observer.html"], + \["OceanTheme", "javax/swing/plaf/metal/OceanTheme.html"], + \["OctetSeqHelper", "org/omg/CORBA/OctetSeqHelper.html"], + \["OctetSeqHolder", "org/omg/CORBA/OctetSeqHolder.html"], + \["OctetStreamData", "javax/xml/crypto/OctetStreamData.html"], + \["Oid", "org/ietf/jgss/Oid.html"], + \["OMGVMCID", "org/omg/CORBA/OMGVMCID.html"], + \["Oneway", "javax/jws/Oneway.html"], + \["OpenDataException", "javax/management/openmbean/OpenDataException.html"], + \["OpenMBeanAttributeInfo", "javax/management/openmbean/OpenMBeanAttributeInfo.html"], + \["OpenMBeanAttributeInfoSupport", "javax/management/openmbean/OpenMBeanAttributeInfoSupport.html"], + \["OpenMBeanConstructorInfo", "javax/management/openmbean/OpenMBeanConstructorInfo.html"], + \["OpenMBeanConstructorInfoSupport", "javax/management/openmbean/OpenMBeanConstructorInfoSupport.html"], + \["OpenMBeanInfo", "javax/management/openmbean/OpenMBeanInfo.html"], + \["OpenMBeanInfoSupport", "javax/management/openmbean/OpenMBeanInfoSupport.html"], + \["OpenMBeanOperationInfo", "javax/management/openmbean/OpenMBeanOperationInfo.html"], + \["OpenMBeanOperationInfoSupport", "javax/management/openmbean/OpenMBeanOperationInfoSupport.html"], + \["OpenMBeanParameterInfo", "javax/management/openmbean/OpenMBeanParameterInfo.html"], + \["OpenMBeanParameterInfoSupport", "javax/management/openmbean/OpenMBeanParameterInfoSupport.html"], + \["OpenType", "java/awt/font/OpenType.html"], + \["OpenType", "javax/management/openmbean/OpenType.html"], + \["OperatingSystemMXBean", "java/lang/management/OperatingSystemMXBean.html"], + \["Operation", "java/rmi/server/Operation.html"], + \["OperationNotSupportedException", "javax/naming/OperationNotSupportedException.html"], + \["OperationsException", "javax/management/OperationsException.html"], + \["Option", "javax/swing/text/html/Option.html"], + \["OptionalDataException", "java/io/OptionalDataException.html"], + \["OptionChecker", "javax/tools/OptionChecker.html"], + \["OptionPaneUI", "javax/swing/plaf/OptionPaneUI.html"], + \["ORB", "org/omg/CORBA/ORB.html"], + \["ORB", "org/omg/CORBA_2_3/ORB.html"], + \["ORBIdHelper", "org/omg/PortableInterceptor/ORBIdHelper.html"], + \["ORBInitializer", "org/omg/PortableInterceptor/ORBInitializer.html"], + \["ORBInitializerOperations", "org/omg/PortableInterceptor/ORBInitializerOperations.html"], + \["ORBInitInfo", "org/omg/PortableInterceptor/ORBInitInfo.html"], + \["ORBInitInfoOperations", "org/omg/PortableInterceptor/ORBInitInfoOperations.html"], + \["OrientationRequested", "javax/print/attribute/standard/OrientationRequested.html"], + \["OutOfMemoryError", "java/lang/OutOfMemoryError.html"], + \["OutputDeviceAssigned", "javax/print/attribute/standard/OutputDeviceAssigned.html"], + \["OutputKeys", "javax/xml/transform/OutputKeys.html"], + \["OutputStream", "java/io/OutputStream.html"], + \["OutputStream", "org/omg/CORBA/portable/OutputStream.html"], + \["OutputStream", "org/omg/CORBA_2_3/portable/OutputStream.html"], + \["OutputStreamWriter", "java/io/OutputStreamWriter.html"], + \["OverlappingFileLockException", "java/nio/channels/OverlappingFileLockException.html"], + \["OverlayLayout", "javax/swing/OverlayLayout.html"], + \["Override", "java/lang/Override.html"], + \["Owner", "java/security/acl/Owner.html"], + \["Pack200", "java/util/jar/Pack200.html"], + \["Pack200.Packer", "java/util/jar/Pack200.Packer.html"], + \["Pack200.Unpacker", "java/util/jar/Pack200.Unpacker.html"], + \["Package", "java/lang/Package.html"], + \["PackageElement", "javax/lang/model/element/PackageElement.html"], + \["PackedColorModel", "java/awt/image/PackedColorModel.html"], + \["Pageable", "java/awt/print/Pageable.html"], + \["PageAttributes", "java/awt/PageAttributes.html"], + \["PageAttributes.ColorType", "java/awt/PageAttributes.ColorType.html"], + \["PageAttributes.MediaType", "java/awt/PageAttributes.MediaType.html"], + \["PageAttributes.OrientationRequestedType", "java/awt/PageAttributes.OrientationRequestedType.html"], + \["PageAttributes.OriginType", "java/awt/PageAttributes.OriginType.html"], + \["PageAttributes.PrintQualityType", "java/awt/PageAttributes.PrintQualityType.html"], + \["PagedResultsControl", "javax/naming/ldap/PagedResultsControl.html"], + \["PagedResultsResponseControl", "javax/naming/ldap/PagedResultsResponseControl.html"], + \["PageFormat", "java/awt/print/PageFormat.html"], + \["PageRanges", "javax/print/attribute/standard/PageRanges.html"], + \["PagesPerMinute", "javax/print/attribute/standard/PagesPerMinute.html"], + \["PagesPerMinuteColor", "javax/print/attribute/standard/PagesPerMinuteColor.html"], + \["Paint", "java/awt/Paint.html"], + \["PaintContext", "java/awt/PaintContext.html"], + \["PaintEvent", "java/awt/event/PaintEvent.html"], + \["Panel", "java/awt/Panel.html"], + \["PanelUI", "javax/swing/plaf/PanelUI.html"], + \["Paper", "java/awt/print/Paper.html"], + \["ParagraphView", "javax/swing/text/html/ParagraphView.html"], + \["ParagraphView", "javax/swing/text/ParagraphView.html"], + \["Parameter", "org/omg/Dynamic/Parameter.html"], + \["ParameterBlock", "java/awt/image/renderable/ParameterBlock.html"], + \["ParameterDescriptor", "java/beans/ParameterDescriptor.html"], + \["ParameterizedType", "java/lang/reflect/ParameterizedType.html"], + \["ParameterMetaData", "java/sql/ParameterMetaData.html"], + \["ParameterMode", "org/omg/CORBA/ParameterMode.html"], + \["ParameterModeHelper", "org/omg/CORBA/ParameterModeHelper.html"], + \["ParameterModeHolder", "org/omg/CORBA/ParameterModeHolder.html"], + \["ParseConversionEvent", "javax/xml/bind/ParseConversionEvent.html"], + \["ParseConversionEventImpl", "javax/xml/bind/helpers/ParseConversionEventImpl.html"], + \["ParseException", "java/text/ParseException.html"], + \["ParsePosition", "java/text/ParsePosition.html"], + \["Parser", "javax/swing/text/html/parser/Parser.html"], + \["Parser", "org/xml/sax/Parser.html"], + \["ParserAdapter", "org/xml/sax/helpers/ParserAdapter.html"], + \["ParserConfigurationException", "javax/xml/parsers/ParserConfigurationException.html"], + \["ParserDelegator", "javax/swing/text/html/parser/ParserDelegator.html"], + \["ParserFactory", "org/xml/sax/helpers/ParserFactory.html"], + \["PartialResultException", "javax/naming/PartialResultException.html"], + \["PasswordAuthentication", "java/net/PasswordAuthentication.html"], + \["PasswordCallback", "javax/security/auth/callback/PasswordCallback.html"], + \["PasswordView", "javax/swing/text/PasswordView.html"], + \["Patch", "javax/sound/midi/Patch.html"], + \["Path2D", "java/awt/geom/Path2D.html"], + \["Path2D.Double", "java/awt/geom/Path2D.Double.html"], + \["Path2D.Float", "java/awt/geom/Path2D.Float.html"], + \["PathIterator", "java/awt/geom/PathIterator.html"], + \["Pattern", "java/util/regex/Pattern.html"], + \["PatternSyntaxException", "java/util/regex/PatternSyntaxException.html"], + \["PBEKey", "javax/crypto/interfaces/PBEKey.html"], + \["PBEKeySpec", "javax/crypto/spec/PBEKeySpec.html"], + \["PBEParameterSpec", "javax/crypto/spec/PBEParameterSpec.html"], + \["PDLOverrideSupported", "javax/print/attribute/standard/PDLOverrideSupported.html"], + \["Permission", "java/security/acl/Permission.html"], + \["Permission", "java/security/Permission.html"], + \["PermissionCollection", "java/security/PermissionCollection.html"], + \["Permissions", "java/security/Permissions.html"], + \["PERSIST_STORE", "org/omg/CORBA/PERSIST_STORE.html"], + \["PersistenceDelegate", "java/beans/PersistenceDelegate.html"], + \["PersistentMBean", "javax/management/PersistentMBean.html"], + \["PGPData", "javax/xml/crypto/dsig/keyinfo/PGPData.html"], + \["PhantomReference", "java/lang/ref/PhantomReference.html"], + \["Pipe", "java/nio/channels/Pipe.html"], + \["Pipe.SinkChannel", "java/nio/channels/Pipe.SinkChannel.html"], + \["Pipe.SourceChannel", "java/nio/channels/Pipe.SourceChannel.html"], + \["PipedInputStream", "java/io/PipedInputStream.html"], + \["PipedOutputStream", "java/io/PipedOutputStream.html"], + \["PipedReader", "java/io/PipedReader.html"], + \["PipedWriter", "java/io/PipedWriter.html"], + \["PixelGrabber", "java/awt/image/PixelGrabber.html"], + \["PixelInterleavedSampleModel", "java/awt/image/PixelInterleavedSampleModel.html"], + \["PKCS8EncodedKeySpec", "java/security/spec/PKCS8EncodedKeySpec.html"], + \["PKIXBuilderParameters", "java/security/cert/PKIXBuilderParameters.html"], + \["PKIXCertPathBuilderResult", "java/security/cert/PKIXCertPathBuilderResult.html"], + \["PKIXCertPathChecker", "java/security/cert/PKIXCertPathChecker.html"], + \["PKIXCertPathValidatorResult", "java/security/cert/PKIXCertPathValidatorResult.html"], + \["PKIXParameters", "java/security/cert/PKIXParameters.html"], + \["PlainDocument", "javax/swing/text/PlainDocument.html"], + \["PlainView", "javax/swing/text/PlainView.html"], + \["POA", "org/omg/PortableServer/POA.html"], + \["POAHelper", "org/omg/PortableServer/POAHelper.html"], + \["POAManager", "org/omg/PortableServer/POAManager.html"], + \["POAManagerOperations", "org/omg/PortableServer/POAManagerOperations.html"], + \["POAOperations", "org/omg/PortableServer/POAOperations.html"], + \["Point", "java/awt/Point.html"], + \["Point2D", "java/awt/geom/Point2D.html"], + \["Point2D.Double", "java/awt/geom/Point2D.Double.html"], + \["Point2D.Float", "java/awt/geom/Point2D.Float.html"], + \["PointerInfo", "java/awt/PointerInfo.html"], + \["Policy", "java/security/Policy.html"], + \["Policy", "javax/security/auth/Policy.html"], + \["Policy", "org/omg/CORBA/Policy.html"], + \["Policy.Parameters", "java/security/Policy.Parameters.html"], + \["PolicyError", "org/omg/CORBA/PolicyError.html"], + \["PolicyErrorCodeHelper", "org/omg/CORBA/PolicyErrorCodeHelper.html"], + \["PolicyErrorHelper", "org/omg/CORBA/PolicyErrorHelper.html"], + \["PolicyErrorHolder", "org/omg/CORBA/PolicyErrorHolder.html"], + \["PolicyFactory", "org/omg/PortableInterceptor/PolicyFactory.html"], + \["PolicyFactoryOperations", "org/omg/PortableInterceptor/PolicyFactoryOperations.html"], + \["PolicyHelper", "org/omg/CORBA/PolicyHelper.html"], + \["PolicyHolder", "org/omg/CORBA/PolicyHolder.html"], + \["PolicyListHelper", "org/omg/CORBA/PolicyListHelper.html"], + \["PolicyListHolder", "org/omg/CORBA/PolicyListHolder.html"], + \["PolicyNode", "java/security/cert/PolicyNode.html"], + \["PolicyOperations", "org/omg/CORBA/PolicyOperations.html"], + \["PolicyQualifierInfo", "java/security/cert/PolicyQualifierInfo.html"], + \["PolicySpi", "java/security/PolicySpi.html"], + \["PolicyTypeHelper", "org/omg/CORBA/PolicyTypeHelper.html"], + \["Polygon", "java/awt/Polygon.html"], + \["PooledConnection", "javax/sql/PooledConnection.html"], + \["Popup", "javax/swing/Popup.html"], + \["PopupFactory", "javax/swing/PopupFactory.html"], + \["PopupMenu", "java/awt/PopupMenu.html"], + \["PopupMenuEvent", "javax/swing/event/PopupMenuEvent.html"], + \["PopupMenuListener", "javax/swing/event/PopupMenuListener.html"], + \["PopupMenuUI", "javax/swing/plaf/PopupMenuUI.html"], + \["Port", "javax/sound/sampled/Port.html"], + \["Port.Info", "javax/sound/sampled/Port.Info.html"], + \["PortableRemoteObject", "javax/rmi/PortableRemoteObject.html"], + \["PortableRemoteObjectDelegate", "javax/rmi/CORBA/PortableRemoteObjectDelegate.html"], + \["PortInfo", "javax/xml/ws/handler/PortInfo.html"], + \["PortUnreachableException", "java/net/PortUnreachableException.html"], + \["Position", "javax/swing/text/Position.html"], + \["Position.Bias", "javax/swing/text/Position.Bias.html"], + \["PostConstruct", "javax/annotation/PostConstruct.html"], + \["PreDestroy", "javax/annotation/PreDestroy.html"], + \["Predicate", "javax/sql/rowset/Predicate.html"], + \["PreferenceChangeEvent", "java/util/prefs/PreferenceChangeEvent.html"], + \["PreferenceChangeListener", "java/util/prefs/PreferenceChangeListener.html"], + \["Preferences", "java/util/prefs/Preferences.html"], + \["PreferencesFactory", "java/util/prefs/PreferencesFactory.html"], + \["PreparedStatement", "java/sql/PreparedStatement.html"], + \["PresentationDirection", "javax/print/attribute/standard/PresentationDirection.html"], + \["PrimitiveType", "javax/lang/model/type/PrimitiveType.html"], + \["Principal", "java/security/Principal.html"], + \["Principal", "org/omg/CORBA/Principal.html"], + \["PrincipalHolder", "org/omg/CORBA/PrincipalHolder.html"], + \["Printable", "java/awt/print/Printable.html"], + \["PrintConversionEvent", "javax/xml/bind/PrintConversionEvent.html"], + \["PrintConversionEventImpl", "javax/xml/bind/helpers/PrintConversionEventImpl.html"], + \["PrinterAbortException", "java/awt/print/PrinterAbortException.html"], + \["PrinterException", "java/awt/print/PrinterException.html"], + \["PrinterGraphics", "java/awt/print/PrinterGraphics.html"], + \["PrinterInfo", "javax/print/attribute/standard/PrinterInfo.html"], + \["PrinterIOException", "java/awt/print/PrinterIOException.html"], + \["PrinterIsAcceptingJobs", "javax/print/attribute/standard/PrinterIsAcceptingJobs.html"], + \["PrinterJob", "java/awt/print/PrinterJob.html"], + \["PrinterLocation", "javax/print/attribute/standard/PrinterLocation.html"], + \["PrinterMakeAndModel", "javax/print/attribute/standard/PrinterMakeAndModel.html"], + \["PrinterMessageFromOperator", "javax/print/attribute/standard/PrinterMessageFromOperator.html"], + \["PrinterMoreInfo", "javax/print/attribute/standard/PrinterMoreInfo.html"], + \["PrinterMoreInfoManufacturer", "javax/print/attribute/standard/PrinterMoreInfoManufacturer.html"], + \["PrinterName", "javax/print/attribute/standard/PrinterName.html"], + \["PrinterResolution", "javax/print/attribute/standard/PrinterResolution.html"], + \["PrinterState", "javax/print/attribute/standard/PrinterState.html"], + \["PrinterStateReason", "javax/print/attribute/standard/PrinterStateReason.html"], + \["PrinterStateReasons", "javax/print/attribute/standard/PrinterStateReasons.html"], + \["PrinterURI", "javax/print/attribute/standard/PrinterURI.html"], + \["PrintEvent", "javax/print/event/PrintEvent.html"], + \["PrintException", "javax/print/PrintException.html"], + \["PrintGraphics", "java/awt/PrintGraphics.html"], + \["PrintJob", "java/awt/PrintJob.html"], + \["PrintJobAdapter", "javax/print/event/PrintJobAdapter.html"], + \["PrintJobAttribute", "javax/print/attribute/PrintJobAttribute.html"], + \["PrintJobAttributeEvent", "javax/print/event/PrintJobAttributeEvent.html"], + \["PrintJobAttributeListener", "javax/print/event/PrintJobAttributeListener.html"], + \["PrintJobAttributeSet", "javax/print/attribute/PrintJobAttributeSet.html"], + \["PrintJobEvent", "javax/print/event/PrintJobEvent.html"], + \["PrintJobListener", "javax/print/event/PrintJobListener.html"], + \["PrintQuality", "javax/print/attribute/standard/PrintQuality.html"], + \["PrintRequestAttribute", "javax/print/attribute/PrintRequestAttribute.html"], + \["PrintRequestAttributeSet", "javax/print/attribute/PrintRequestAttributeSet.html"], + \["PrintService", "javax/print/PrintService.html"], + \["PrintServiceAttribute", "javax/print/attribute/PrintServiceAttribute.html"], + \["PrintServiceAttributeEvent", "javax/print/event/PrintServiceAttributeEvent.html"], + \["PrintServiceAttributeListener", "javax/print/event/PrintServiceAttributeListener.html"], + \["PrintServiceAttributeSet", "javax/print/attribute/PrintServiceAttributeSet.html"], + \["PrintServiceLookup", "javax/print/PrintServiceLookup.html"], + \["PrintStream", "java/io/PrintStream.html"], + \["PrintWriter", "java/io/PrintWriter.html"], + \["PriorityBlockingQueue", "java/util/concurrent/PriorityBlockingQueue.html"], + \["PriorityQueue", "java/util/PriorityQueue.html"], + \["PRIVATE_MEMBER", "org/omg/CORBA/PRIVATE_MEMBER.html"], + \["PrivateClassLoader", "javax/management/loading/PrivateClassLoader.html"], + \["PrivateCredentialPermission", "javax/security/auth/PrivateCredentialPermission.html"], + \["PrivateKey", "java/security/PrivateKey.html"], + \["PrivateMLet", "javax/management/loading/PrivateMLet.html"], + \["PrivilegedAction", "java/security/PrivilegedAction.html"], + \["PrivilegedActionException", "java/security/PrivilegedActionException.html"], + \["PrivilegedExceptionAction", "java/security/PrivilegedExceptionAction.html"], + \["Process", "java/lang/Process.html"], + \["ProcessBuilder", "java/lang/ProcessBuilder.html"], + \["ProcessingEnvironment", "javax/annotation/processing/ProcessingEnvironment.html"], + \["ProcessingInstruction", "javax/xml/stream/events/ProcessingInstruction.html"], + \["ProcessingInstruction", "org/w3c/dom/ProcessingInstruction.html"], + \["Processor", "javax/annotation/processing/Processor.html"], + \["ProfileDataException", "java/awt/color/ProfileDataException.html"], + \["ProfileIdHelper", "org/omg/IOP/ProfileIdHelper.html"], + \["ProgressBarUI", "javax/swing/plaf/ProgressBarUI.html"], + \["ProgressMonitor", "javax/swing/ProgressMonitor.html"], + \["ProgressMonitorInputStream", "javax/swing/ProgressMonitorInputStream.html"], + \["Properties", "java/util/Properties.html"], + \["PropertyChangeEvent", "java/beans/PropertyChangeEvent.html"], + \["PropertyChangeListener", "java/beans/PropertyChangeListener.html"], + \["PropertyChangeListenerProxy", "java/beans/PropertyChangeListenerProxy.html"], + \["PropertyChangeSupport", "java/beans/PropertyChangeSupport.html"], + \["PropertyDescriptor", "java/beans/PropertyDescriptor.html"], + \["PropertyEditor", "java/beans/PropertyEditor.html"], + \["PropertyEditorManager", "java/beans/PropertyEditorManager.html"], + \["PropertyEditorSupport", "java/beans/PropertyEditorSupport.html"], + \["PropertyException", "javax/xml/bind/PropertyException.html"], + \["PropertyPermission", "java/util/PropertyPermission.html"], + \["PropertyResourceBundle", "java/util/PropertyResourceBundle.html"], + \["PropertyVetoException", "java/beans/PropertyVetoException.html"], + \["ProtectionDomain", "java/security/ProtectionDomain.html"], + \["ProtocolException", "java/net/ProtocolException.html"], + \["ProtocolException", "javax/xml/ws/ProtocolException.html"], + \["Provider", "java/security/Provider.html"], + \["Provider", "javax/xml/ws/Provider.html"], + \["Provider", "javax/xml/ws/spi/Provider.html"], + \["Provider.Service", "java/security/Provider.Service.html"], + \["ProviderException", "java/security/ProviderException.html"], + \["Proxy", "java/lang/reflect/Proxy.html"], + \["Proxy", "java/net/Proxy.html"], + \["Proxy.Type", "java/net/Proxy.Type.html"], + \["ProxySelector", "java/net/ProxySelector.html"], + \["PSource", "javax/crypto/spec/PSource.html"], + \["PSource.PSpecified", "javax/crypto/spec/PSource.PSpecified.html"], + \["PSSParameterSpec", "java/security/spec/PSSParameterSpec.html"], + \["PUBLIC_MEMBER", "org/omg/CORBA/PUBLIC_MEMBER.html"], + \["PublicKey", "java/security/PublicKey.html"], + \["PushbackInputStream", "java/io/PushbackInputStream.html"], + \["PushbackReader", "java/io/PushbackReader.html"], + \["QName", "javax/xml/namespace/QName.html"], + \["QuadCurve2D", "java/awt/geom/QuadCurve2D.html"], + \["QuadCurve2D.Double", "java/awt/geom/QuadCurve2D.Double.html"], + \["QuadCurve2D.Float", "java/awt/geom/QuadCurve2D.Float.html"], + \["Query", "javax/management/Query.html"], + \["QueryEval", "javax/management/QueryEval.html"], + \["QueryExp", "javax/management/QueryExp.html"], + \["Queue", "java/util/Queue.html"], + \["QueuedJobCount", "javax/print/attribute/standard/QueuedJobCount.html"], + \["RadialGradientPaint", "java/awt/RadialGradientPaint.html"], + \["Random", "java/util/Random.html"], + \["RandomAccess", "java/util/RandomAccess.html"], + \["RandomAccessFile", "java/io/RandomAccessFile.html"], + \["Raster", "java/awt/image/Raster.html"], + \["RasterFormatException", "java/awt/image/RasterFormatException.html"], + \["RasterOp", "java/awt/image/RasterOp.html"], + \["RC2ParameterSpec", "javax/crypto/spec/RC2ParameterSpec.html"], + \["RC5ParameterSpec", "javax/crypto/spec/RC5ParameterSpec.html"], + \["Rdn", "javax/naming/ldap/Rdn.html"], + \["Readable", "java/lang/Readable.html"], + \["ReadableByteChannel", "java/nio/channels/ReadableByteChannel.html"], + \["Reader", "java/io/Reader.html"], + \["ReadOnlyBufferException", "java/nio/ReadOnlyBufferException.html"], + \["ReadWriteLock", "java/util/concurrent/locks/ReadWriteLock.html"], + \["RealmCallback", "javax/security/sasl/RealmCallback.html"], + \["RealmChoiceCallback", "javax/security/sasl/RealmChoiceCallback.html"], + \["REBIND", "org/omg/CORBA/REBIND.html"], + \["Receiver", "javax/sound/midi/Receiver.html"], + \["Rectangle", "java/awt/Rectangle.html"], + \["Rectangle2D", "java/awt/geom/Rectangle2D.html"], + \["Rectangle2D.Double", "java/awt/geom/Rectangle2D.Double.html"], + \["Rectangle2D.Float", "java/awt/geom/Rectangle2D.Float.html"], + \["RectangularShape", "java/awt/geom/RectangularShape.html"], + \["ReentrantLock", "java/util/concurrent/locks/ReentrantLock.html"], + \["ReentrantReadWriteLock", "java/util/concurrent/locks/ReentrantReadWriteLock.html"], + \["ReentrantReadWriteLock.ReadLock", "java/util/concurrent/locks/ReentrantReadWriteLock.ReadLock.html"], + \["ReentrantReadWriteLock.WriteLock", "java/util/concurrent/locks/ReentrantReadWriteLock.WriteLock.html"], + \["Ref", "java/sql/Ref.html"], + \["RefAddr", "javax/naming/RefAddr.html"], + \["Reference", "java/lang/ref/Reference.html"], + \["Reference", "javax/naming/Reference.html"], + \["Reference", "javax/xml/crypto/dsig/Reference.html"], + \["Referenceable", "javax/naming/Referenceable.html"], + \["ReferenceQueue", "java/lang/ref/ReferenceQueue.html"], + \["ReferenceType", "javax/lang/model/type/ReferenceType.html"], + \["ReferenceUriSchemesSupported", "javax/print/attribute/standard/ReferenceUriSchemesSupported.html"], + \["ReferralException", "javax/naming/ReferralException.html"], + \["ReflectionException", "javax/management/ReflectionException.html"], + \["ReflectPermission", "java/lang/reflect/ReflectPermission.html"], + \["Refreshable", "javax/security/auth/Refreshable.html"], + \["RefreshFailedException", "javax/security/auth/RefreshFailedException.html"], + \["Region", "javax/swing/plaf/synth/Region.html"], + \["RegisterableService", "javax/imageio/spi/RegisterableService.html"], + \["Registry", "java/rmi/registry/Registry.html"], + \["RegistryHandler", "java/rmi/registry/RegistryHandler.html"], + \["RejectedExecutionException", "java/util/concurrent/RejectedExecutionException.html"], + \["RejectedExecutionHandler", "java/util/concurrent/RejectedExecutionHandler.html"], + \["Relation", "javax/management/relation/Relation.html"], + \["RelationException", "javax/management/relation/RelationException.html"], + \["RelationNotFoundException", "javax/management/relation/RelationNotFoundException.html"], + \["RelationNotification", "javax/management/relation/RelationNotification.html"], + \["RelationService", "javax/management/relation/RelationService.html"], + \["RelationServiceMBean", "javax/management/relation/RelationServiceMBean.html"], + \["RelationServiceNotRegisteredException", "javax/management/relation/RelationServiceNotRegisteredException.html"], + \["RelationSupport", "javax/management/relation/RelationSupport.html"], + \["RelationSupportMBean", "javax/management/relation/RelationSupportMBean.html"], + \["RelationType", "javax/management/relation/RelationType.html"], + \["RelationTypeNotFoundException", "javax/management/relation/RelationTypeNotFoundException.html"], + \["RelationTypeSupport", "javax/management/relation/RelationTypeSupport.html"], + \["RemarshalException", "org/omg/CORBA/portable/RemarshalException.html"], + \["Remote", "java/rmi/Remote.html"], + \["RemoteCall", "java/rmi/server/RemoteCall.html"], + \["RemoteException", "java/rmi/RemoteException.html"], + \["RemoteObject", "java/rmi/server/RemoteObject.html"], + \["RemoteObjectInvocationHandler", "java/rmi/server/RemoteObjectInvocationHandler.html"], + \["RemoteRef", "java/rmi/server/RemoteRef.html"], + \["RemoteServer", "java/rmi/server/RemoteServer.html"], + \["RemoteStub", "java/rmi/server/RemoteStub.html"], + \["RenderableImage", "java/awt/image/renderable/RenderableImage.html"], + \["RenderableImageOp", "java/awt/image/renderable/RenderableImageOp.html"], + \["RenderableImageProducer", "java/awt/image/renderable/RenderableImageProducer.html"], + \["RenderContext", "java/awt/image/renderable/RenderContext.html"], + \["RenderedImage", "java/awt/image/RenderedImage.html"], + \["RenderedImageFactory", "java/awt/image/renderable/RenderedImageFactory.html"], + \["Renderer", "javax/swing/Renderer.html"], + \["RenderingHints", "java/awt/RenderingHints.html"], + \["RenderingHints.Key", "java/awt/RenderingHints.Key.html"], + \["RepaintManager", "javax/swing/RepaintManager.html"], + \["ReplicateScaleFilter", "java/awt/image/ReplicateScaleFilter.html"], + \["RepositoryIdHelper", "org/omg/CORBA/RepositoryIdHelper.html"], + \["Request", "org/omg/CORBA/Request.html"], + \["REQUEST_PROCESSING_POLICY_ID", "org/omg/PortableServer/REQUEST_PROCESSING_POLICY_ID.html"], + \["RequestInfo", "org/omg/PortableInterceptor/RequestInfo.html"], + \["RequestInfoOperations", "org/omg/PortableInterceptor/RequestInfoOperations.html"], + \["RequestingUserName", "javax/print/attribute/standard/RequestingUserName.html"], + \["RequestProcessingPolicy", "org/omg/PortableServer/RequestProcessingPolicy.html"], + \["RequestProcessingPolicyOperations", "org/omg/PortableServer/RequestProcessingPolicyOperations.html"], + \["RequestProcessingPolicyValue", "org/omg/PortableServer/RequestProcessingPolicyValue.html"], + \["RequestWrapper", "javax/xml/ws/RequestWrapper.html"], + \["RequiredModelMBean", "javax/management/modelmbean/RequiredModelMBean.html"], + \["RescaleOp", "java/awt/image/RescaleOp.html"], + \["ResolutionSyntax", "javax/print/attribute/ResolutionSyntax.html"], + \["Resolver", "javax/naming/spi/Resolver.html"], + \["ResolveResult", "javax/naming/spi/ResolveResult.html"], + \["Resource", "javax/annotation/Resource.html"], + \["Resource.AuthenticationType", "javax/annotation/Resource.AuthenticationType.html"], + \["ResourceBundle", "java/util/ResourceBundle.html"], + \["ResourceBundle.Control", "java/util/ResourceBundle.Control.html"], + \["Resources", "javax/annotation/Resources.html"], + \["RespectBinding", "javax/xml/ws/RespectBinding.html"], + \["RespectBindingFeature", "javax/xml/ws/RespectBindingFeature.html"], + \["Response", "javax/xml/ws/Response.html"], + \["ResponseCache", "java/net/ResponseCache.html"], + \["ResponseHandler", "org/omg/CORBA/portable/ResponseHandler.html"], + \["ResponseWrapper", "javax/xml/ws/ResponseWrapper.html"], + \["Result", "javax/xml/transform/Result.html"], + \["ResultSet", "java/sql/ResultSet.html"], + \["ResultSetMetaData", "java/sql/ResultSetMetaData.html"], + \["Retention", "java/lang/annotation/Retention.html"], + \["RetentionPolicy", "java/lang/annotation/RetentionPolicy.html"], + \["RetrievalMethod", "javax/xml/crypto/dsig/keyinfo/RetrievalMethod.html"], + \["ReverbType", "javax/sound/sampled/ReverbType.html"], + \["RGBImageFilter", "java/awt/image/RGBImageFilter.html"], + \["RMIClassLoader", "java/rmi/server/RMIClassLoader.html"], + \["RMIClassLoaderSpi", "java/rmi/server/RMIClassLoaderSpi.html"], + \["RMIClientSocketFactory", "java/rmi/server/RMIClientSocketFactory.html"], + \["RMIConnection", "javax/management/remote/rmi/RMIConnection.html"], + \["RMIConnectionImpl", "javax/management/remote/rmi/RMIConnectionImpl.html"], + \["RMIConnectionImpl_Stub", "javax/management/remote/rmi/RMIConnectionImpl_Stub.html"], + \["RMIConnector", "javax/management/remote/rmi/RMIConnector.html"], + \["RMIConnectorServer", "javax/management/remote/rmi/RMIConnectorServer.html"], + \["RMICustomMaxStreamFormat", "org/omg/IOP/RMICustomMaxStreamFormat.html"], + \["RMIFailureHandler", "java/rmi/server/RMIFailureHandler.html"], + \["RMIIIOPServerImpl", "javax/management/remote/rmi/RMIIIOPServerImpl.html"], + \["RMIJRMPServerImpl", "javax/management/remote/rmi/RMIJRMPServerImpl.html"], + \["RMISecurityException", "java/rmi/RMISecurityException.html"], + \["RMISecurityManager", "java/rmi/RMISecurityManager.html"], + \["RMIServer", "javax/management/remote/rmi/RMIServer.html"], + \["RMIServerImpl", "javax/management/remote/rmi/RMIServerImpl.html"], + \["RMIServerImpl_Stub", "javax/management/remote/rmi/RMIServerImpl_Stub.html"], + \["RMIServerSocketFactory", "java/rmi/server/RMIServerSocketFactory.html"], + \["RMISocketFactory", "java/rmi/server/RMISocketFactory.html"], + \["Robot", "java/awt/Robot.html"], + \["Role", "javax/management/relation/Role.html"], + \["RoleInfo", "javax/management/relation/RoleInfo.html"], + \["RoleInfoNotFoundException", "javax/management/relation/RoleInfoNotFoundException.html"], + \["RoleList", "javax/management/relation/RoleList.html"], + \["RoleNotFoundException", "javax/management/relation/RoleNotFoundException.html"], + \["RoleResult", "javax/management/relation/RoleResult.html"], + \["RoleStatus", "javax/management/relation/RoleStatus.html"], + \["RoleUnresolved", "javax/management/relation/RoleUnresolved.html"], + \["RoleUnresolvedList", "javax/management/relation/RoleUnresolvedList.html"], + \["RootPaneContainer", "javax/swing/RootPaneContainer.html"], + \["RootPaneUI", "javax/swing/plaf/RootPaneUI.html"], + \["RoundEnvironment", "javax/annotation/processing/RoundEnvironment.html"], + \["RoundingMode", "java/math/RoundingMode.html"], + \["RoundRectangle2D", "java/awt/geom/RoundRectangle2D.html"], + \["RoundRectangle2D.Double", "java/awt/geom/RoundRectangle2D.Double.html"], + \["RoundRectangle2D.Float", "java/awt/geom/RoundRectangle2D.Float.html"], + \["RowFilter", "javax/swing/RowFilter.html"], + \["RowFilter.ComparisonType", "javax/swing/RowFilter.ComparisonType.html"], + \["RowFilter.Entry", "javax/swing/RowFilter.Entry.html"], + \["RowId", "java/sql/RowId.html"], + \["RowIdLifetime", "java/sql/RowIdLifetime.html"], + \["RowMapper", "javax/swing/tree/RowMapper.html"], + \["RowSet", "javax/sql/RowSet.html"], + \["RowSetEvent", "javax/sql/RowSetEvent.html"], + \["RowSetInternal", "javax/sql/RowSetInternal.html"], + \["RowSetListener", "javax/sql/RowSetListener.html"], + \["RowSetMetaData", "javax/sql/RowSetMetaData.html"], + \["RowSetMetaDataImpl", "javax/sql/rowset/RowSetMetaDataImpl.html"], + \["RowSetReader", "javax/sql/RowSetReader.html"], + \["RowSetWarning", "javax/sql/rowset/RowSetWarning.html"], + \["RowSetWriter", "javax/sql/RowSetWriter.html"], + \["RowSorter", "javax/swing/RowSorter.html"], + \["RowSorter.SortKey", "javax/swing/RowSorter.SortKey.html"], + \["RowSorterEvent", "javax/swing/event/RowSorterEvent.html"], + \["RowSorterEvent.Type", "javax/swing/event/RowSorterEvent.Type.html"], + \["RowSorterListener", "javax/swing/event/RowSorterListener.html"], + \["RSAKey", "java/security/interfaces/RSAKey.html"], + \["RSAKeyGenParameterSpec", "java/security/spec/RSAKeyGenParameterSpec.html"], + \["RSAMultiPrimePrivateCrtKey", "java/security/interfaces/RSAMultiPrimePrivateCrtKey.html"], + \["RSAMultiPrimePrivateCrtKeySpec", "java/security/spec/RSAMultiPrimePrivateCrtKeySpec.html"], + \["RSAOtherPrimeInfo", "java/security/spec/RSAOtherPrimeInfo.html"], + \["RSAPrivateCrtKey", "java/security/interfaces/RSAPrivateCrtKey.html"], + \["RSAPrivateCrtKeySpec", "java/security/spec/RSAPrivateCrtKeySpec.html"], + \["RSAPrivateKey", "java/security/interfaces/RSAPrivateKey.html"], + \["RSAPrivateKeySpec", "java/security/spec/RSAPrivateKeySpec.html"], + \["RSAPublicKey", "java/security/interfaces/RSAPublicKey.html"], + \["RSAPublicKeySpec", "java/security/spec/RSAPublicKeySpec.html"], + \["RTFEditorKit", "javax/swing/text/rtf/RTFEditorKit.html"], + \["RuleBasedCollator", "java/text/RuleBasedCollator.html"], + \["Runnable", "java/lang/Runnable.html"], + \["RunnableFuture", "java/util/concurrent/RunnableFuture.html"], + \["RunnableScheduledFuture", "java/util/concurrent/RunnableScheduledFuture.html"], + \["Runtime", "java/lang/Runtime.html"], + \["RunTime", "org/omg/SendingContext/RunTime.html"], + \["RuntimeErrorException", "javax/management/RuntimeErrorException.html"], + \["RuntimeException", "java/lang/RuntimeException.html"], + \["RuntimeMBeanException", "javax/management/RuntimeMBeanException.html"], + \["RuntimeMXBean", "java/lang/management/RuntimeMXBean.html"], + \["RunTimeOperations", "org/omg/SendingContext/RunTimeOperations.html"], + \["RuntimeOperationsException", "javax/management/RuntimeOperationsException.html"], + \["RuntimePermission", "java/lang/RuntimePermission.html"], + \["SAAJMetaFactory", "javax/xml/soap/SAAJMetaFactory.html"], + \["SAAJResult", "javax/xml/soap/SAAJResult.html"], + \["SampleModel", "java/awt/image/SampleModel.html"], + \["Sasl", "javax/security/sasl/Sasl.html"], + \["SaslClient", "javax/security/sasl/SaslClient.html"], + \["SaslClientFactory", "javax/security/sasl/SaslClientFactory.html"], + \["SaslException", "javax/security/sasl/SaslException.html"], + \["SaslServer", "javax/security/sasl/SaslServer.html"], + \["SaslServerFactory", "javax/security/sasl/SaslServerFactory.html"], + \["Savepoint", "java/sql/Savepoint.html"], + \["SAXException", "org/xml/sax/SAXException.html"], + \["SAXNotRecognizedException", "org/xml/sax/SAXNotRecognizedException.html"], + \["SAXNotSupportedException", "org/xml/sax/SAXNotSupportedException.html"], + \["SAXParseException", "org/xml/sax/SAXParseException.html"], + \["SAXParser", "javax/xml/parsers/SAXParser.html"], + \["SAXParserFactory", "javax/xml/parsers/SAXParserFactory.html"], + \["SAXResult", "javax/xml/transform/sax/SAXResult.html"], + \["SAXSource", "javax/xml/transform/sax/SAXSource.html"], + \["SAXTransformerFactory", "javax/xml/transform/sax/SAXTransformerFactory.html"], + \["Scanner", "java/util/Scanner.html"], + \["ScatteringByteChannel", "java/nio/channels/ScatteringByteChannel.html"], + \["ScheduledExecutorService", "java/util/concurrent/ScheduledExecutorService.html"], + \["ScheduledFuture", "java/util/concurrent/ScheduledFuture.html"], + \["ScheduledThreadPoolExecutor", "java/util/concurrent/ScheduledThreadPoolExecutor.html"], + \["Schema", "javax/xml/validation/Schema.html"], + \["SchemaFactory", "javax/xml/validation/SchemaFactory.html"], + \["SchemaFactoryLoader", "javax/xml/validation/SchemaFactoryLoader.html"], + \["SchemaOutputResolver", "javax/xml/bind/SchemaOutputResolver.html"], + \["SchemaViolationException", "javax/naming/directory/SchemaViolationException.html"], + \["ScriptContext", "javax/script/ScriptContext.html"], + \["ScriptEngine", "javax/script/ScriptEngine.html"], + \["ScriptEngineFactory", "javax/script/ScriptEngineFactory.html"], + \["ScriptEngineManager", "javax/script/ScriptEngineManager.html"], + \["ScriptException", "javax/script/ScriptException.html"], + \["Scrollable", "javax/swing/Scrollable.html"], + \["Scrollbar", "java/awt/Scrollbar.html"], + \["ScrollBarUI", "javax/swing/plaf/ScrollBarUI.html"], + \["ScrollPane", "java/awt/ScrollPane.html"], + \["ScrollPaneAdjustable", "java/awt/ScrollPaneAdjustable.html"], + \["ScrollPaneConstants", "javax/swing/ScrollPaneConstants.html"], + \["ScrollPaneLayout", "javax/swing/ScrollPaneLayout.html"], + \["ScrollPaneLayout.UIResource", "javax/swing/ScrollPaneLayout.UIResource.html"], + \["ScrollPaneUI", "javax/swing/plaf/ScrollPaneUI.html"], + \["SealedObject", "javax/crypto/SealedObject.html"], + \["SearchControls", "javax/naming/directory/SearchControls.html"], + \["SearchResult", "javax/naming/directory/SearchResult.html"], + \["SecretKey", "javax/crypto/SecretKey.html"], + \["SecretKeyFactory", "javax/crypto/SecretKeyFactory.html"], + \["SecretKeyFactorySpi", "javax/crypto/SecretKeyFactorySpi.html"], + \["SecretKeySpec", "javax/crypto/spec/SecretKeySpec.html"], + \["SecureCacheResponse", "java/net/SecureCacheResponse.html"], + \["SecureClassLoader", "java/security/SecureClassLoader.html"], + \["SecureRandom", "java/security/SecureRandom.html"], + \["SecureRandomSpi", "java/security/SecureRandomSpi.html"], + \["Security", "java/security/Security.html"], + \["SecurityException", "java/lang/SecurityException.html"], + \["SecurityManager", "java/lang/SecurityManager.html"], + \["SecurityPermission", "java/security/SecurityPermission.html"], + \["Segment", "javax/swing/text/Segment.html"], + \["SelectableChannel", "java/nio/channels/SelectableChannel.html"], + \["SelectionKey", "java/nio/channels/SelectionKey.html"], + \["Selector", "java/nio/channels/Selector.html"], + \["SelectorProvider", "java/nio/channels/spi/SelectorProvider.html"], + \["Semaphore", "java/util/concurrent/Semaphore.html"], + \["SeparatorUI", "javax/swing/plaf/SeparatorUI.html"], + \["Sequence", "javax/sound/midi/Sequence.html"], + \["SequenceInputStream", "java/io/SequenceInputStream.html"], + \["Sequencer", "javax/sound/midi/Sequencer.html"], + \["Sequencer.SyncMode", "javax/sound/midi/Sequencer.SyncMode.html"], + \["SerialArray", "javax/sql/rowset/serial/SerialArray.html"], + \["SerialBlob", "javax/sql/rowset/serial/SerialBlob.html"], + \["SerialClob", "javax/sql/rowset/serial/SerialClob.html"], + \["SerialDatalink", "javax/sql/rowset/serial/SerialDatalink.html"], + \["SerialException", "javax/sql/rowset/serial/SerialException.html"], + \["Serializable", "java/io/Serializable.html"], + \["SerializablePermission", "java/io/SerializablePermission.html"], + \["SerialJavaObject", "javax/sql/rowset/serial/SerialJavaObject.html"], + \["SerialRef", "javax/sql/rowset/serial/SerialRef.html"], + \["SerialStruct", "javax/sql/rowset/serial/SerialStruct.html"], + \["Servant", "org/omg/PortableServer/Servant.html"], + \["SERVANT_RETENTION_POLICY_ID", "org/omg/PortableServer/SERVANT_RETENTION_POLICY_ID.html"], + \["ServantActivator", "org/omg/PortableServer/ServantActivator.html"], + \["ServantActivatorHelper", "org/omg/PortableServer/ServantActivatorHelper.html"], + \["ServantActivatorOperations", "org/omg/PortableServer/ServantActivatorOperations.html"], + \["ServantActivatorPOA", "org/omg/PortableServer/ServantActivatorPOA.html"], + \["ServantAlreadyActive", "org/omg/PortableServer/POAPackage/ServantAlreadyActive.html"], + \["ServantAlreadyActiveHelper", "org/omg/PortableServer/POAPackage/ServantAlreadyActiveHelper.html"], + \["ServantLocator", "org/omg/PortableServer/ServantLocator.html"], + \["ServantLocatorHelper", "org/omg/PortableServer/ServantLocatorHelper.html"], + \["ServantLocatorOperations", "org/omg/PortableServer/ServantLocatorOperations.html"], + \["ServantLocatorPOA", "org/omg/PortableServer/ServantLocatorPOA.html"], + \["ServantManager", "org/omg/PortableServer/ServantManager.html"], + \["ServantManagerOperations", "org/omg/PortableServer/ServantManagerOperations.html"], + \["ServantNotActive", "org/omg/PortableServer/POAPackage/ServantNotActive.html"], + \["ServantNotActiveHelper", "org/omg/PortableServer/POAPackage/ServantNotActiveHelper.html"], + \["ServantObject", "org/omg/CORBA/portable/ServantObject.html"], + \["ServantRetentionPolicy", "org/omg/PortableServer/ServantRetentionPolicy.html"], + \["ServantRetentionPolicyOperations", "org/omg/PortableServer/ServantRetentionPolicyOperations.html"], + \["ServantRetentionPolicyValue", "org/omg/PortableServer/ServantRetentionPolicyValue.html"], + \["ServerCloneException", "java/rmi/server/ServerCloneException.html"], + \["ServerError", "java/rmi/ServerError.html"], + \["ServerException", "java/rmi/ServerException.html"], + \["ServerIdHelper", "org/omg/PortableInterceptor/ServerIdHelper.html"], + \["ServerNotActiveException", "java/rmi/server/ServerNotActiveException.html"], + \["ServerRef", "java/rmi/server/ServerRef.html"], + \["ServerRequest", "org/omg/CORBA/ServerRequest.html"], + \["ServerRequestInfo", "org/omg/PortableInterceptor/ServerRequestInfo.html"], + \["ServerRequestInfoOperations", "org/omg/PortableInterceptor/ServerRequestInfoOperations.html"], + \["ServerRequestInterceptor", "org/omg/PortableInterceptor/ServerRequestInterceptor.html"], + \["ServerRequestInterceptorOperations", "org/omg/PortableInterceptor/ServerRequestInterceptorOperations.html"], + \["ServerRuntimeException", "java/rmi/ServerRuntimeException.html"], + \["ServerSocket", "java/net/ServerSocket.html"], + \["ServerSocketChannel", "java/nio/channels/ServerSocketChannel.html"], + \["ServerSocketFactory", "javax/net/ServerSocketFactory.html"], + \["Service", "javax/xml/ws/Service.html"], + \["Service.Mode", "javax/xml/ws/Service.Mode.html"], + \["ServiceConfigurationError", "java/util/ServiceConfigurationError.html"], + \["ServiceContext", "org/omg/IOP/ServiceContext.html"], + \["ServiceContextHelper", "org/omg/IOP/ServiceContextHelper.html"], + \["ServiceContextHolder", "org/omg/IOP/ServiceContextHolder.html"], + \["ServiceContextListHelper", "org/omg/IOP/ServiceContextListHelper.html"], + \["ServiceContextListHolder", "org/omg/IOP/ServiceContextListHolder.html"], + \["ServiceDelegate", "javax/xml/ws/spi/ServiceDelegate.html"], + \["ServiceDetail", "org/omg/CORBA/ServiceDetail.html"], + \["ServiceDetailHelper", "org/omg/CORBA/ServiceDetailHelper.html"], + \["ServiceIdHelper", "org/omg/IOP/ServiceIdHelper.html"], + \["ServiceInformation", "org/omg/CORBA/ServiceInformation.html"], + \["ServiceInformationHelper", "org/omg/CORBA/ServiceInformationHelper.html"], + \["ServiceInformationHolder", "org/omg/CORBA/ServiceInformationHolder.html"], + \["ServiceLoader", "java/util/ServiceLoader.html"], + \["ServiceMode", "javax/xml/ws/ServiceMode.html"], + \["ServiceNotFoundException", "javax/management/ServiceNotFoundException.html"], + \["ServicePermission", "javax/security/auth/kerberos/ServicePermission.html"], + \["ServiceRegistry", "javax/imageio/spi/ServiceRegistry.html"], + \["ServiceRegistry.Filter", "javax/imageio/spi/ServiceRegistry.Filter.html"], + \["ServiceUI", "javax/print/ServiceUI.html"], + \["ServiceUIFactory", "javax/print/ServiceUIFactory.html"], + \["ServiceUnavailableException", "javax/naming/ServiceUnavailableException.html"], + \["Set", "java/util/Set.html"], + \["SetOfIntegerSyntax", "javax/print/attribute/SetOfIntegerSyntax.html"], + \["SetOverrideType", "org/omg/CORBA/SetOverrideType.html"], + \["SetOverrideTypeHelper", "org/omg/CORBA/SetOverrideTypeHelper.html"], + \["Severity", "javax/print/attribute/standard/Severity.html"], + \["Shape", "java/awt/Shape.html"], + \["ShapeGraphicAttribute", "java/awt/font/ShapeGraphicAttribute.html"], + \["SheetCollate", "javax/print/attribute/standard/SheetCollate.html"], + \["Short", "java/lang/Short.html"], + \["ShortBuffer", "java/nio/ShortBuffer.html"], + \["ShortBufferException", "javax/crypto/ShortBufferException.html"], + \["ShortHolder", "org/omg/CORBA/ShortHolder.html"], + \["ShortLookupTable", "java/awt/image/ShortLookupTable.html"], + \["ShortMessage", "javax/sound/midi/ShortMessage.html"], + \["ShortSeqHelper", "org/omg/CORBA/ShortSeqHelper.html"], + \["ShortSeqHolder", "org/omg/CORBA/ShortSeqHolder.html"], + \["Sides", "javax/print/attribute/standard/Sides.html"], + \["Signature", "java/security/Signature.html"], + \["SignatureException", "java/security/SignatureException.html"], + \["SignatureMethod", "javax/xml/crypto/dsig/SignatureMethod.html"], + \["SignatureMethodParameterSpec", "javax/xml/crypto/dsig/spec/SignatureMethodParameterSpec.html"], + \["SignatureProperties", "javax/xml/crypto/dsig/SignatureProperties.html"], + \["SignatureProperty", "javax/xml/crypto/dsig/SignatureProperty.html"], + \["SignatureSpi", "java/security/SignatureSpi.html"], + \["SignedInfo", "javax/xml/crypto/dsig/SignedInfo.html"], + \["SignedObject", "java/security/SignedObject.html"], + \["Signer", "java/security/Signer.html"], + \["SimpleAnnotationValueVisitor6", "javax/lang/model/util/SimpleAnnotationValueVisitor6.html"], + \["SimpleAttributeSet", "javax/swing/text/SimpleAttributeSet.html"], + \["SimpleBeanInfo", "java/beans/SimpleBeanInfo.html"], + \["SimpleBindings", "javax/script/SimpleBindings.html"], + \["SimpleDateFormat", "java/text/SimpleDateFormat.html"], + \["SimpleDoc", "javax/print/SimpleDoc.html"], + \["SimpleElementVisitor6", "javax/lang/model/util/SimpleElementVisitor6.html"], + \["SimpleFormatter", "java/util/logging/SimpleFormatter.html"], + \["SimpleJavaFileObject", "javax/tools/SimpleJavaFileObject.html"], + \["SimpleScriptContext", "javax/script/SimpleScriptContext.html"], + \["SimpleTimeZone", "java/util/SimpleTimeZone.html"], + \["SimpleType", "javax/management/openmbean/SimpleType.html"], + \["SimpleTypeVisitor6", "javax/lang/model/util/SimpleTypeVisitor6.html"], + \["SinglePixelPackedSampleModel", "java/awt/image/SinglePixelPackedSampleModel.html"], + \["SingleSelectionModel", "javax/swing/SingleSelectionModel.html"], + \["Size2DSyntax", "javax/print/attribute/Size2DSyntax.html"], + \["SizeLimitExceededException", "javax/naming/SizeLimitExceededException.html"], + \["SizeRequirements", "javax/swing/SizeRequirements.html"], + \["SizeSequence", "javax/swing/SizeSequence.html"], + \["Skeleton", "java/rmi/server/Skeleton.html"], + \["SkeletonMismatchException", "java/rmi/server/SkeletonMismatchException.html"], + \["SkeletonNotFoundException", "java/rmi/server/SkeletonNotFoundException.html"], + \["SliderUI", "javax/swing/plaf/SliderUI.html"], + \["SOAPBinding", "javax/jws/soap/SOAPBinding.html"], + \["SOAPBinding", "javax/xml/ws/soap/SOAPBinding.html"], + \["SOAPBinding.ParameterStyle", "javax/jws/soap/SOAPBinding.ParameterStyle.html"], + \["SOAPBinding.Style", "javax/jws/soap/SOAPBinding.Style.html"], + \["SOAPBinding.Use", "javax/jws/soap/SOAPBinding.Use.html"], + \["SOAPBody", "javax/xml/soap/SOAPBody.html"], + \["SOAPBodyElement", "javax/xml/soap/SOAPBodyElement.html"], + \["SOAPConnection", "javax/xml/soap/SOAPConnection.html"], + \["SOAPConnectionFactory", "javax/xml/soap/SOAPConnectionFactory.html"], + \["SOAPConstants", "javax/xml/soap/SOAPConstants.html"], + \["SOAPElement", "javax/xml/soap/SOAPElement.html"], + \["SOAPElementFactory", "javax/xml/soap/SOAPElementFactory.html"], + \["SOAPEnvelope", "javax/xml/soap/SOAPEnvelope.html"], + \["SOAPException", "javax/xml/soap/SOAPException.html"], + \["SOAPFactory", "javax/xml/soap/SOAPFactory.html"], + \["SOAPFault", "javax/xml/soap/SOAPFault.html"], + \["SOAPFaultElement", "javax/xml/soap/SOAPFaultElement.html"], + \["SOAPFaultException", "javax/xml/ws/soap/SOAPFaultException.html"], + \["SOAPHandler", "javax/xml/ws/handler/soap/SOAPHandler.html"], + \["SOAPHeader", "javax/xml/soap/SOAPHeader.html"], + \["SOAPHeaderElement", "javax/xml/soap/SOAPHeaderElement.html"], + \["SOAPMessage", "javax/xml/soap/SOAPMessage.html"], + \["SOAPMessageContext", "javax/xml/ws/handler/soap/SOAPMessageContext.html"], + \["SOAPMessageHandler", "javax/jws/soap/SOAPMessageHandler.html"], + \["SOAPMessageHandlers", "javax/jws/soap/SOAPMessageHandlers.html"], + \["SOAPPart", "javax/xml/soap/SOAPPart.html"], + \["Socket", "java/net/Socket.html"], + \["SocketAddress", "java/net/SocketAddress.html"], + \["SocketChannel", "java/nio/channels/SocketChannel.html"], + \["SocketException", "java/net/SocketException.html"], + \["SocketFactory", "javax/net/SocketFactory.html"], + \["SocketHandler", "java/util/logging/SocketHandler.html"], + \["SocketImpl", "java/net/SocketImpl.html"], + \["SocketImplFactory", "java/net/SocketImplFactory.html"], + \["SocketOptions", "java/net/SocketOptions.html"], + \["SocketPermission", "java/net/SocketPermission.html"], + \["SocketSecurityException", "java/rmi/server/SocketSecurityException.html"], + \["SocketTimeoutException", "java/net/SocketTimeoutException.html"], + \["SoftBevelBorder", "javax/swing/border/SoftBevelBorder.html"], + \["SoftReference", "java/lang/ref/SoftReference.html"], + \["SortControl", "javax/naming/ldap/SortControl.html"], + \["SortedMap", "java/util/SortedMap.html"], + \["SortedSet", "java/util/SortedSet.html"], + \["SortingFocusTraversalPolicy", "javax/swing/SortingFocusTraversalPolicy.html"], + \["SortKey", "javax/naming/ldap/SortKey.html"], + \["SortOrder", "javax/swing/SortOrder.html"], + \["SortResponseControl", "javax/naming/ldap/SortResponseControl.html"], + \["Soundbank", "javax/sound/midi/Soundbank.html"], + \["SoundbankReader", "javax/sound/midi/spi/SoundbankReader.html"], + \["SoundbankResource", "javax/sound/midi/SoundbankResource.html"], + \["Source", "javax/xml/transform/Source.html"], + \["SourceDataLine", "javax/sound/sampled/SourceDataLine.html"], + \["SourceLocator", "javax/xml/transform/SourceLocator.html"], + \["SourceVersion", "javax/lang/model/SourceVersion.html"], + \["SpinnerDateModel", "javax/swing/SpinnerDateModel.html"], + \["SpinnerListModel", "javax/swing/SpinnerListModel.html"], + \["SpinnerModel", "javax/swing/SpinnerModel.html"], + \["SpinnerNumberModel", "javax/swing/SpinnerNumberModel.html"], + \["SpinnerUI", "javax/swing/plaf/SpinnerUI.html"], + \["SplashScreen", "java/awt/SplashScreen.html"], + \["SplitPaneUI", "javax/swing/plaf/SplitPaneUI.html"], + \["Spring", "javax/swing/Spring.html"], + \["SpringLayout", "javax/swing/SpringLayout.html"], + \["SpringLayout.Constraints", "javax/swing/SpringLayout.Constraints.html"], + \["SQLClientInfoException", "java/sql/SQLClientInfoException.html"], + \["SQLData", "java/sql/SQLData.html"], + \["SQLDataException", "java/sql/SQLDataException.html"], + \["SQLException", "java/sql/SQLException.html"], + \["SQLFeatureNotSupportedException", "java/sql/SQLFeatureNotSupportedException.html"], + \["SQLInput", "java/sql/SQLInput.html"], + \["SQLInputImpl", "javax/sql/rowset/serial/SQLInputImpl.html"], + \["SQLIntegrityConstraintViolationException", "java/sql/SQLIntegrityConstraintViolationException.html"], + \["SQLInvalidAuthorizationSpecException", "java/sql/SQLInvalidAuthorizationSpecException.html"], + \["SQLNonTransientConnectionException", "java/sql/SQLNonTransientConnectionException.html"], + \["SQLNonTransientException", "java/sql/SQLNonTransientException.html"], + \["SQLOutput", "java/sql/SQLOutput.html"], + \["SQLOutputImpl", "javax/sql/rowset/serial/SQLOutputImpl.html"], + \["SQLPermission", "java/sql/SQLPermission.html"], + \["SQLRecoverableException", "java/sql/SQLRecoverableException.html"], + \["SQLSyntaxErrorException", "java/sql/SQLSyntaxErrorException.html"], + \["SQLTimeoutException", "java/sql/SQLTimeoutException.html"], + \["SQLTransactionRollbackException", "java/sql/SQLTransactionRollbackException.html"], + \["SQLTransientConnectionException", "java/sql/SQLTransientConnectionException.html"], + \["SQLTransientException", "java/sql/SQLTransientException.html"], + \["SQLWarning", "java/sql/SQLWarning.html"], + \["SQLXML", "java/sql/SQLXML.html"], + \["SSLContext", "javax/net/ssl/SSLContext.html"], + \["SSLContextSpi", "javax/net/ssl/SSLContextSpi.html"], + \["SSLEngine", "javax/net/ssl/SSLEngine.html"], + \["SSLEngineResult", "javax/net/ssl/SSLEngineResult.html"], + \["SSLEngineResult.HandshakeStatus", "javax/net/ssl/SSLEngineResult.HandshakeStatus.html"], + \["SSLEngineResult.Status", "javax/net/ssl/SSLEngineResult.Status.html"], + \["SSLException", "javax/net/ssl/SSLException.html"], + \["SSLHandshakeException", "javax/net/ssl/SSLHandshakeException.html"], + \["SSLKeyException", "javax/net/ssl/SSLKeyException.html"], + \["SSLParameters", "javax/net/ssl/SSLParameters.html"], + \["SSLPeerUnverifiedException", "javax/net/ssl/SSLPeerUnverifiedException.html"], + \["SSLPermission", "javax/net/ssl/SSLPermission.html"], + \["SSLProtocolException", "javax/net/ssl/SSLProtocolException.html"], + \["SslRMIClientSocketFactory", "javax/rmi/ssl/SslRMIClientSocketFactory.html"], + \["SslRMIServerSocketFactory", "javax/rmi/ssl/SslRMIServerSocketFactory.html"], + \["SSLServerSocket", "javax/net/ssl/SSLServerSocket.html"], + \["SSLServerSocketFactory", "javax/net/ssl/SSLServerSocketFactory.html"], + \["SSLSession", "javax/net/ssl/SSLSession.html"], + \["SSLSessionBindingEvent", "javax/net/ssl/SSLSessionBindingEvent.html"], + \["SSLSessionBindingListener", "javax/net/ssl/SSLSessionBindingListener.html"], + \["SSLSessionContext", "javax/net/ssl/SSLSessionContext.html"], + \["SSLSocket", "javax/net/ssl/SSLSocket.html"], + \["SSLSocketFactory", "javax/net/ssl/SSLSocketFactory.html"], + \["Stack", "java/util/Stack.html"], + \["StackOverflowError", "java/lang/StackOverflowError.html"], + \["StackTraceElement", "java/lang/StackTraceElement.html"], + \["StandardEmitterMBean", "javax/management/StandardEmitterMBean.html"], + \["StandardJavaFileManager", "javax/tools/StandardJavaFileManager.html"], + \["StandardLocation", "javax/tools/StandardLocation.html"], + \["StandardMBean", "javax/management/StandardMBean.html"], + \["StartDocument", "javax/xml/stream/events/StartDocument.html"], + \["StartElement", "javax/xml/stream/events/StartElement.html"], + \["StartTlsRequest", "javax/naming/ldap/StartTlsRequest.html"], + \["StartTlsResponse", "javax/naming/ldap/StartTlsResponse.html"], + \["State", "org/omg/PortableServer/POAManagerPackage/State.html"], + \["StateEdit", "javax/swing/undo/StateEdit.html"], + \["StateEditable", "javax/swing/undo/StateEditable.html"], + \["StateFactory", "javax/naming/spi/StateFactory.html"], + \["Statement", "java/beans/Statement.html"], + \["Statement", "java/sql/Statement.html"], + \["StatementEvent", "javax/sql/StatementEvent.html"], + \["StatementEventListener", "javax/sql/StatementEventListener.html"], + \["StAXResult", "javax/xml/transform/stax/StAXResult.html"], + \["StAXSource", "javax/xml/transform/stax/StAXSource.html"], + \["Streamable", "org/omg/CORBA/portable/Streamable.html"], + \["StreamableValue", "org/omg/CORBA/portable/StreamableValue.html"], + \["StreamCorruptedException", "java/io/StreamCorruptedException.html"], + \["StreamFilter", "javax/xml/stream/StreamFilter.html"], + \["StreamHandler", "java/util/logging/StreamHandler.html"], + \["StreamPrintService", "javax/print/StreamPrintService.html"], + \["StreamPrintServiceFactory", "javax/print/StreamPrintServiceFactory.html"], + \["StreamReaderDelegate", "javax/xml/stream/util/StreamReaderDelegate.html"], + \["StreamResult", "javax/xml/transform/stream/StreamResult.html"], + \["StreamSource", "javax/xml/transform/stream/StreamSource.html"], + \["StreamTokenizer", "java/io/StreamTokenizer.html"], + \["StrictMath", "java/lang/StrictMath.html"], + \["String", "java/lang/String.html"], + \["StringBuffer", "java/lang/StringBuffer.html"], + \["StringBufferInputStream", "java/io/StringBufferInputStream.html"], + \["StringBuilder", "java/lang/StringBuilder.html"], + \["StringCharacterIterator", "java/text/StringCharacterIterator.html"], + \["StringContent", "javax/swing/text/StringContent.html"], + \["StringHolder", "org/omg/CORBA/StringHolder.html"], + \["StringIndexOutOfBoundsException", "java/lang/StringIndexOutOfBoundsException.html"], + \["StringMonitor", "javax/management/monitor/StringMonitor.html"], + \["StringMonitorMBean", "javax/management/monitor/StringMonitorMBean.html"], + \["StringNameHelper", "org/omg/CosNaming/NamingContextExtPackage/StringNameHelper.html"], + \["StringReader", "java/io/StringReader.html"], + \["StringRefAddr", "javax/naming/StringRefAddr.html"], + \["StringSelection", "java/awt/datatransfer/StringSelection.html"], + \["StringSeqHelper", "org/omg/CORBA/StringSeqHelper.html"], + \["StringSeqHolder", "org/omg/CORBA/StringSeqHolder.html"], + \["StringTokenizer", "java/util/StringTokenizer.html"], + \["StringValueExp", "javax/management/StringValueExp.html"], + \["StringValueHelper", "org/omg/CORBA/StringValueHelper.html"], + \["StringWriter", "java/io/StringWriter.html"], + \["Stroke", "java/awt/Stroke.html"], + \["Struct", "java/sql/Struct.html"], + \["StructMember", "org/omg/CORBA/StructMember.html"], + \["StructMemberHelper", "org/omg/CORBA/StructMemberHelper.html"], + \["Stub", "javax/rmi/CORBA/Stub.html"], + \["StubDelegate", "javax/rmi/CORBA/StubDelegate.html"], + \["StubNotFoundException", "java/rmi/StubNotFoundException.html"], + \["Style", "javax/swing/text/Style.html"], + \["StyleConstants", "javax/swing/text/StyleConstants.html"], + \["StyleConstants.CharacterConstants", "javax/swing/text/StyleConstants.CharacterConstants.html"], + \["StyleConstants.ColorConstants", "javax/swing/text/StyleConstants.ColorConstants.html"], + \["StyleConstants.FontConstants", "javax/swing/text/StyleConstants.FontConstants.html"], + \["StyleConstants.ParagraphConstants", "javax/swing/text/StyleConstants.ParagraphConstants.html"], + \["StyleContext", "javax/swing/text/StyleContext.html"], + \["StyledDocument", "javax/swing/text/StyledDocument.html"], + \["StyledEditorKit", "javax/swing/text/StyledEditorKit.html"], + \["StyledEditorKit.AlignmentAction", "javax/swing/text/StyledEditorKit.AlignmentAction.html"], + \["StyledEditorKit.BoldAction", "javax/swing/text/StyledEditorKit.BoldAction.html"], + \["StyledEditorKit.FontFamilyAction", "javax/swing/text/StyledEditorKit.FontFamilyAction.html"], + \["StyledEditorKit.FontSizeAction", "javax/swing/text/StyledEditorKit.FontSizeAction.html"], + \["StyledEditorKit.ForegroundAction", "javax/swing/text/StyledEditorKit.ForegroundAction.html"], + \["StyledEditorKit.ItalicAction", "javax/swing/text/StyledEditorKit.ItalicAction.html"], + \["StyledEditorKit.StyledTextAction", "javax/swing/text/StyledEditorKit.StyledTextAction.html"], + \["StyledEditorKit.UnderlineAction", "javax/swing/text/StyledEditorKit.UnderlineAction.html"], + \["StyleSheet", "javax/swing/text/html/StyleSheet.html"], + \["StyleSheet.BoxPainter", "javax/swing/text/html/StyleSheet.BoxPainter.html"], + \["StyleSheet.ListPainter", "javax/swing/text/html/StyleSheet.ListPainter.html"], + \["Subject", "javax/security/auth/Subject.html"], + \["SubjectDelegationPermission", "javax/management/remote/SubjectDelegationPermission.html"], + \["SubjectDomainCombiner", "javax/security/auth/SubjectDomainCombiner.html"], + \["SUCCESSFUL", "org/omg/PortableInterceptor/SUCCESSFUL.html"], + \["SupportedAnnotationTypes", "javax/annotation/processing/SupportedAnnotationTypes.html"], + \["SupportedOptions", "javax/annotation/processing/SupportedOptions.html"], + \["SupportedSourceVersion", "javax/annotation/processing/SupportedSourceVersion.html"], + \["SupportedValuesAttribute", "javax/print/attribute/SupportedValuesAttribute.html"], + \["SuppressWarnings", "java/lang/SuppressWarnings.html"], + \["SwingConstants", "javax/swing/SwingConstants.html"], + \["SwingPropertyChangeSupport", "javax/swing/event/SwingPropertyChangeSupport.html"], + \["SwingUtilities", "javax/swing/SwingUtilities.html"], + \["SwingWorker", "javax/swing/SwingWorker.html"], + \["SwingWorker.StateValue", "javax/swing/SwingWorker.StateValue.html"], + \["SYNC_WITH_TRANSPORT", "org/omg/Messaging/SYNC_WITH_TRANSPORT.html"], + \["SyncFactory", "javax/sql/rowset/spi/SyncFactory.html"], + \["SyncFactoryException", "javax/sql/rowset/spi/SyncFactoryException.html"], + \["SyncFailedException", "java/io/SyncFailedException.html"], + \["SynchronousQueue", "java/util/concurrent/SynchronousQueue.html"], + \["SyncProvider", "javax/sql/rowset/spi/SyncProvider.html"], + \["SyncProviderException", "javax/sql/rowset/spi/SyncProviderException.html"], + \["SyncResolver", "javax/sql/rowset/spi/SyncResolver.html"], + \["SyncScopeHelper", "org/omg/Messaging/SyncScopeHelper.html"], + \["SynthConstants", "javax/swing/plaf/synth/SynthConstants.html"], + \["SynthContext", "javax/swing/plaf/synth/SynthContext.html"], + \["Synthesizer", "javax/sound/midi/Synthesizer.html"], + \["SynthGraphicsUtils", "javax/swing/plaf/synth/SynthGraphicsUtils.html"], + \["SynthLookAndFeel", "javax/swing/plaf/synth/SynthLookAndFeel.html"], + \["SynthPainter", "javax/swing/plaf/synth/SynthPainter.html"], + \["SynthStyle", "javax/swing/plaf/synth/SynthStyle.html"], + \["SynthStyleFactory", "javax/swing/plaf/synth/SynthStyleFactory.html"], + \["SysexMessage", "javax/sound/midi/SysexMessage.html"], + \["System", "java/lang/System.html"], + \["SYSTEM_EXCEPTION", "org/omg/PortableInterceptor/SYSTEM_EXCEPTION.html"], + \["SystemColor", "java/awt/SystemColor.html"], + \["SystemException", "org/omg/CORBA/SystemException.html"], + \["SystemFlavorMap", "java/awt/datatransfer/SystemFlavorMap.html"], + \["SystemTray", "java/awt/SystemTray.html"], + \["TabableView", "javax/swing/text/TabableView.html"], + \["TabbedPaneUI", "javax/swing/plaf/TabbedPaneUI.html"], + \["TabExpander", "javax/swing/text/TabExpander.html"], + \["TableCellEditor", "javax/swing/table/TableCellEditor.html"], + \["TableCellRenderer", "javax/swing/table/TableCellRenderer.html"], + \["TableColumn", "javax/swing/table/TableColumn.html"], + \["TableColumnModel", "javax/swing/table/TableColumnModel.html"], + \["TableColumnModelEvent", "javax/swing/event/TableColumnModelEvent.html"], + \["TableColumnModelListener", "javax/swing/event/TableColumnModelListener.html"], + \["TableHeaderUI", "javax/swing/plaf/TableHeaderUI.html"], + \["TableModel", "javax/swing/table/TableModel.html"], + \["TableModelEvent", "javax/swing/event/TableModelEvent.html"], + \["TableModelListener", "javax/swing/event/TableModelListener.html"], + \["TableRowSorter", "javax/swing/table/TableRowSorter.html"], + \["TableStringConverter", "javax/swing/table/TableStringConverter.html"], + \["TableUI", "javax/swing/plaf/TableUI.html"], + \["TableView", "javax/swing/text/TableView.html"], + \["TabSet", "javax/swing/text/TabSet.html"], + \["TabStop", "javax/swing/text/TabStop.html"], + \["TabularData", "javax/management/openmbean/TabularData.html"], + \["TabularDataSupport", "javax/management/openmbean/TabularDataSupport.html"], + \["TabularType", "javax/management/openmbean/TabularType.html"], + \["TAG_ALTERNATE_IIOP_ADDRESS", "org/omg/IOP/TAG_ALTERNATE_IIOP_ADDRESS.html"], + \["TAG_CODE_SETS", "org/omg/IOP/TAG_CODE_SETS.html"], + \["TAG_INTERNET_IOP", "org/omg/IOP/TAG_INTERNET_IOP.html"], + \["TAG_JAVA_CODEBASE", "org/omg/IOP/TAG_JAVA_CODEBASE.html"], + \["TAG_MULTIPLE_COMPONENTS", "org/omg/IOP/TAG_MULTIPLE_COMPONENTS.html"], + \["TAG_ORB_TYPE", "org/omg/IOP/TAG_ORB_TYPE.html"], + \["TAG_POLICIES", "org/omg/IOP/TAG_POLICIES.html"], + \["TAG_RMI_CUSTOM_MAX_STREAM_FORMAT", "org/omg/IOP/TAG_RMI_CUSTOM_MAX_STREAM_FORMAT.html"], + \["TagElement", "javax/swing/text/html/parser/TagElement.html"], + \["TaggedComponent", "org/omg/IOP/TaggedComponent.html"], + \["TaggedComponentHelper", "org/omg/IOP/TaggedComponentHelper.html"], + \["TaggedComponentHolder", "org/omg/IOP/TaggedComponentHolder.html"], + \["TaggedProfile", "org/omg/IOP/TaggedProfile.html"], + \["TaggedProfileHelper", "org/omg/IOP/TaggedProfileHelper.html"], + \["TaggedProfileHolder", "org/omg/IOP/TaggedProfileHolder.html"], + \["Target", "java/lang/annotation/Target.html"], + \["TargetDataLine", "javax/sound/sampled/TargetDataLine.html"], + \["TargetedNotification", "javax/management/remote/TargetedNotification.html"], + \["TCKind", "org/omg/CORBA/TCKind.html"], + \["Templates", "javax/xml/transform/Templates.html"], + \["TemplatesHandler", "javax/xml/transform/sax/TemplatesHandler.html"], + \["Text", "javax/xml/soap/Text.html"], + \["Text", "org/w3c/dom/Text.html"], + \["TextAction", "javax/swing/text/TextAction.html"], + \["TextArea", "java/awt/TextArea.html"], + \["TextAttribute", "java/awt/font/TextAttribute.html"], + \["TextComponent", "java/awt/TextComponent.html"], + \["TextEvent", "java/awt/event/TextEvent.html"], + \["TextField", "java/awt/TextField.html"], + \["TextHitInfo", "java/awt/font/TextHitInfo.html"], + \["TextInputCallback", "javax/security/auth/callback/TextInputCallback.html"], + \["TextLayout", "java/awt/font/TextLayout.html"], + \["TextLayout.CaretPolicy", "java/awt/font/TextLayout.CaretPolicy.html"], + \["TextListener", "java/awt/event/TextListener.html"], + \["TextMeasurer", "java/awt/font/TextMeasurer.html"], + \["TextOutputCallback", "javax/security/auth/callback/TextOutputCallback.html"], + \["TextSyntax", "javax/print/attribute/TextSyntax.html"], + \["TextUI", "javax/swing/plaf/TextUI.html"], + \["TexturePaint", "java/awt/TexturePaint.html"], + \["Thread", "java/lang/Thread.html"], + \["Thread.State", "java/lang/Thread.State.html"], + \["Thread.UncaughtExceptionHandler", "java/lang/Thread.UncaughtExceptionHandler.html"], + \["THREAD_POLICY_ID", "org/omg/PortableServer/THREAD_POLICY_ID.html"], + \["ThreadDeath", "java/lang/ThreadDeath.html"], + \["ThreadFactory", "java/util/concurrent/ThreadFactory.html"], + \["ThreadGroup", "java/lang/ThreadGroup.html"], + \["ThreadInfo", "java/lang/management/ThreadInfo.html"], + \["ThreadLocal", "java/lang/ThreadLocal.html"], + \["ThreadMXBean", "java/lang/management/ThreadMXBean.html"], + \["ThreadPolicy", "org/omg/PortableServer/ThreadPolicy.html"], + \["ThreadPolicyOperations", "org/omg/PortableServer/ThreadPolicyOperations.html"], + \["ThreadPolicyValue", "org/omg/PortableServer/ThreadPolicyValue.html"], + \["ThreadPoolExecutor", "java/util/concurrent/ThreadPoolExecutor.html"], + \["ThreadPoolExecutor.AbortPolicy", "java/util/concurrent/ThreadPoolExecutor.AbortPolicy.html"], + \["ThreadPoolExecutor.CallerRunsPolicy", "java/util/concurrent/ThreadPoolExecutor.CallerRunsPolicy.html"], + \["ThreadPoolExecutor.DiscardOldestPolicy", "java/util/concurrent/ThreadPoolExecutor.DiscardOldestPolicy.html"], + \["ThreadPoolExecutor.DiscardPolicy", "java/util/concurrent/ThreadPoolExecutor.DiscardPolicy.html"], + \["Throwable", "java/lang/Throwable.html"], + \["Tie", "javax/rmi/CORBA/Tie.html"], + \["TileObserver", "java/awt/image/TileObserver.html"], + \["Time", "java/sql/Time.html"], + \["TimeLimitExceededException", "javax/naming/TimeLimitExceededException.html"], + \["TIMEOUT", "org/omg/CORBA/TIMEOUT.html"], + \["TimeoutException", "java/util/concurrent/TimeoutException.html"], + \["Timer", "java/util/Timer.html"], + \["Timer", "javax/management/timer/Timer.html"], + \["Timer", "javax/swing/Timer.html"], + \["TimerMBean", "javax/management/timer/TimerMBean.html"], + \["TimerNotification", "javax/management/timer/TimerNotification.html"], + \["TimerTask", "java/util/TimerTask.html"], + \["Timestamp", "java/security/Timestamp.html"], + \["Timestamp", "java/sql/Timestamp.html"], + \["TimeUnit", "java/util/concurrent/TimeUnit.html"], + \["TimeZone", "java/util/TimeZone.html"], + \["TimeZoneNameProvider", "java/util/spi/TimeZoneNameProvider.html"], + \["TitledBorder", "javax/swing/border/TitledBorder.html"], + \["Tool", "javax/tools/Tool.html"], + \["ToolBarUI", "javax/swing/plaf/ToolBarUI.html"], + \["Toolkit", "java/awt/Toolkit.html"], + \["ToolProvider", "javax/tools/ToolProvider.html"], + \["ToolTipManager", "javax/swing/ToolTipManager.html"], + \["ToolTipUI", "javax/swing/plaf/ToolTipUI.html"], + \["TooManyListenersException", "java/util/TooManyListenersException.html"], + \["Track", "javax/sound/midi/Track.html"], + \["TRANSACTION_MODE", "org/omg/CORBA/TRANSACTION_MODE.html"], + \["TRANSACTION_REQUIRED", "org/omg/CORBA/TRANSACTION_REQUIRED.html"], + \["TRANSACTION_ROLLEDBACK", "org/omg/CORBA/TRANSACTION_ROLLEDBACK.html"], + \["TRANSACTION_UNAVAILABLE", "org/omg/CORBA/TRANSACTION_UNAVAILABLE.html"], + \["TransactionalWriter", "javax/sql/rowset/spi/TransactionalWriter.html"], + \["TransactionRequiredException", "javax/transaction/TransactionRequiredException.html"], + \["TransactionRolledbackException", "javax/transaction/TransactionRolledbackException.html"], + \["TransactionService", "org/omg/IOP/TransactionService.html"], + \["Transferable", "java/awt/datatransfer/Transferable.html"], + \["TransferHandler", "javax/swing/TransferHandler.html"], + \["TransferHandler.DropLocation", "javax/swing/TransferHandler.DropLocation.html"], + \["TransferHandler.TransferSupport", "javax/swing/TransferHandler.TransferSupport.html"], + \["Transform", "javax/xml/crypto/dsig/Transform.html"], + \["TransformAttribute", "java/awt/font/TransformAttribute.html"], + \["Transformer", "javax/xml/transform/Transformer.html"], + \["TransformerConfigurationException", "javax/xml/transform/TransformerConfigurationException.html"], + \["TransformerException", "javax/xml/transform/TransformerException.html"], + \["TransformerFactory", "javax/xml/transform/TransformerFactory.html"], + \["TransformerFactoryConfigurationError", "javax/xml/transform/TransformerFactoryConfigurationError.html"], + \["TransformerHandler", "javax/xml/transform/sax/TransformerHandler.html"], + \["TransformException", "javax/xml/crypto/dsig/TransformException.html"], + \["TransformParameterSpec", "javax/xml/crypto/dsig/spec/TransformParameterSpec.html"], + \["TransformService", "javax/xml/crypto/dsig/TransformService.html"], + \["TRANSIENT", "org/omg/CORBA/TRANSIENT.html"], + \["Transmitter", "javax/sound/midi/Transmitter.html"], + \["Transparency", "java/awt/Transparency.html"], + \["TRANSPORT_RETRY", "org/omg/PortableInterceptor/TRANSPORT_RETRY.html"], + \["TrayIcon", "java/awt/TrayIcon.html"], + \["TrayIcon.MessageType", "java/awt/TrayIcon.MessageType.html"], + \["TreeCellEditor", "javax/swing/tree/TreeCellEditor.html"], + \["TreeCellRenderer", "javax/swing/tree/TreeCellRenderer.html"], + \["TreeExpansionEvent", "javax/swing/event/TreeExpansionEvent.html"], + \["TreeExpansionListener", "javax/swing/event/TreeExpansionListener.html"], + \["TreeMap", "java/util/TreeMap.html"], + \["TreeModel", "javax/swing/tree/TreeModel.html"], + \["TreeModelEvent", "javax/swing/event/TreeModelEvent.html"], + \["TreeModelListener", "javax/swing/event/TreeModelListener.html"], + \["TreeNode", "javax/swing/tree/TreeNode.html"], + \["TreePath", "javax/swing/tree/TreePath.html"], + \["TreeSelectionEvent", "javax/swing/event/TreeSelectionEvent.html"], + \["TreeSelectionListener", "javax/swing/event/TreeSelectionListener.html"], + \["TreeSelectionModel", "javax/swing/tree/TreeSelectionModel.html"], + \["TreeSet", "java/util/TreeSet.html"], + \["TreeUI", "javax/swing/plaf/TreeUI.html"], + \["TreeWillExpandListener", "javax/swing/event/TreeWillExpandListener.html"], + \["TrustAnchor", "java/security/cert/TrustAnchor.html"], + \["TrustManager", "javax/net/ssl/TrustManager.html"], + \["TrustManagerFactory", "javax/net/ssl/TrustManagerFactory.html"], + \["TrustManagerFactorySpi", "javax/net/ssl/TrustManagerFactorySpi.html"], + \["Type", "java/lang/reflect/Type.html"], + \["TypeCode", "org/omg/CORBA/TypeCode.html"], + \["TypeCodeHolder", "org/omg/CORBA/TypeCodeHolder.html"], + \["TypeConstraintException", "javax/xml/bind/TypeConstraintException.html"], + \["TypeElement", "javax/lang/model/element/TypeElement.html"], + \["TypeInfo", "org/w3c/dom/TypeInfo.html"], + \["TypeInfoProvider", "javax/xml/validation/TypeInfoProvider.html"], + \["TypeKind", "javax/lang/model/type/TypeKind.html"], + \["TypeKindVisitor6", "javax/lang/model/util/TypeKindVisitor6.html"], + \["TypeMirror", "javax/lang/model/type/TypeMirror.html"], + \["TypeMismatch", "org/omg/CORBA/DynAnyPackage/TypeMismatch.html"], + \["TypeMismatch", "org/omg/DynamicAny/DynAnyPackage/TypeMismatch.html"], + \["TypeMismatch", "org/omg/IOP/CodecPackage/TypeMismatch.html"], + \["TypeMismatchHelper", "org/omg/DynamicAny/DynAnyPackage/TypeMismatchHelper.html"], + \["TypeMismatchHelper", "org/omg/IOP/CodecPackage/TypeMismatchHelper.html"], + \["TypeNotPresentException", "java/lang/TypeNotPresentException.html"], + \["TypeParameterElement", "javax/lang/model/element/TypeParameterElement.html"], + \["Types", "java/sql/Types.html"], + \["Types", "javax/lang/model/util/Types.html"], + \["TypeVariable", "java/lang/reflect/TypeVariable.html"], + \["TypeVariable", "javax/lang/model/type/TypeVariable.html"], + \["TypeVisitor", "javax/lang/model/type/TypeVisitor.html"], + \["UID", "java/rmi/server/UID.html"], + \["UIDefaults", "javax/swing/UIDefaults.html"], + \["UIDefaults.ActiveValue", "javax/swing/UIDefaults.ActiveValue.html"], + \["UIDefaults.LazyInputMap", "javax/swing/UIDefaults.LazyInputMap.html"], + \["UIDefaults.LazyValue", "javax/swing/UIDefaults.LazyValue.html"], + \["UIDefaults.ProxyLazyValue", "javax/swing/UIDefaults.ProxyLazyValue.html"], + \["UIEvent", "org/w3c/dom/events/UIEvent.html"], + \["UIManager", "javax/swing/UIManager.html"], + \["UIManager.LookAndFeelInfo", "javax/swing/UIManager.LookAndFeelInfo.html"], + \["UIResource", "javax/swing/plaf/UIResource.html"], + \["ULongLongSeqHelper", "org/omg/CORBA/ULongLongSeqHelper.html"], + \["ULongLongSeqHolder", "org/omg/CORBA/ULongLongSeqHolder.html"], + \["ULongSeqHelper", "org/omg/CORBA/ULongSeqHelper.html"], + \["ULongSeqHolder", "org/omg/CORBA/ULongSeqHolder.html"], + \["UndeclaredThrowableException", "java/lang/reflect/UndeclaredThrowableException.html"], + \["UndoableEdit", "javax/swing/undo/UndoableEdit.html"], + \["UndoableEditEvent", "javax/swing/event/UndoableEditEvent.html"], + \["UndoableEditListener", "javax/swing/event/UndoableEditListener.html"], + \["UndoableEditSupport", "javax/swing/undo/UndoableEditSupport.html"], + \["UndoManager", "javax/swing/undo/UndoManager.html"], + \["UnexpectedException", "java/rmi/UnexpectedException.html"], + \["UnicastRemoteObject", "java/rmi/server/UnicastRemoteObject.html"], + \["UnionMember", "org/omg/CORBA/UnionMember.html"], + \["UnionMemberHelper", "org/omg/CORBA/UnionMemberHelper.html"], + \["UNKNOWN", "org/omg/CORBA/UNKNOWN.html"], + \["UNKNOWN", "org/omg/PortableInterceptor/UNKNOWN.html"], + \["UnknownAnnotationValueException", "javax/lang/model/element/UnknownAnnotationValueException.html"], + \["UnknownElementException", "javax/lang/model/element/UnknownElementException.html"], + \["UnknownEncoding", "org/omg/IOP/CodecFactoryPackage/UnknownEncoding.html"], + \["UnknownEncodingHelper", "org/omg/IOP/CodecFactoryPackage/UnknownEncodingHelper.html"], + \["UnknownError", "java/lang/UnknownError.html"], + \["UnknownException", "org/omg/CORBA/portable/UnknownException.html"], + \["UnknownFormatConversionException", "java/util/UnknownFormatConversionException.html"], + \["UnknownFormatFlagsException", "java/util/UnknownFormatFlagsException.html"], + \["UnknownGroupException", "java/rmi/activation/UnknownGroupException.html"], + \["UnknownHostException", "java/net/UnknownHostException.html"], + \["UnknownHostException", "java/rmi/UnknownHostException.html"], + \["UnknownObjectException", "java/rmi/activation/UnknownObjectException.html"], + \["UnknownServiceException", "java/net/UnknownServiceException.html"], + \["UnknownTypeException", "javax/lang/model/type/UnknownTypeException.html"], + \["UnknownUserException", "org/omg/CORBA/UnknownUserException.html"], + \["UnknownUserExceptionHelper", "org/omg/CORBA/UnknownUserExceptionHelper.html"], + \["UnknownUserExceptionHolder", "org/omg/CORBA/UnknownUserExceptionHolder.html"], + \["UnmappableCharacterException", "java/nio/charset/UnmappableCharacterException.html"], + \["UnmarshalException", "java/rmi/UnmarshalException.html"], + \["UnmarshalException", "javax/xml/bind/UnmarshalException.html"], + \["Unmarshaller", "javax/xml/bind/Unmarshaller.html"], + \["Unmarshaller.Listener", "javax/xml/bind/Unmarshaller.Listener.html"], + \["UnmarshallerHandler", "javax/xml/bind/UnmarshallerHandler.html"], + \["UnmodifiableClassException", "java/lang/instrument/UnmodifiableClassException.html"], + \["UnmodifiableSetException", "javax/print/attribute/UnmodifiableSetException.html"], + \["UnrecoverableEntryException", "java/security/UnrecoverableEntryException.html"], + \["UnrecoverableKeyException", "java/security/UnrecoverableKeyException.html"], + \["Unreferenced", "java/rmi/server/Unreferenced.html"], + \["UnresolvedAddressException", "java/nio/channels/UnresolvedAddressException.html"], + \["UnresolvedPermission", "java/security/UnresolvedPermission.html"], + \["UnsatisfiedLinkError", "java/lang/UnsatisfiedLinkError.html"], + \["UnsolicitedNotification", "javax/naming/ldap/UnsolicitedNotification.html"], + \["UnsolicitedNotificationEvent", "javax/naming/ldap/UnsolicitedNotificationEvent.html"], + \["UnsolicitedNotificationListener", "javax/naming/ldap/UnsolicitedNotificationListener.html"], + \["UNSUPPORTED_POLICY", "org/omg/CORBA/UNSUPPORTED_POLICY.html"], + \["UNSUPPORTED_POLICY_VALUE", "org/omg/CORBA/UNSUPPORTED_POLICY_VALUE.html"], + \["UnsupportedAddressTypeException", "java/nio/channels/UnsupportedAddressTypeException.html"], + \["UnsupportedAudioFileException", "javax/sound/sampled/UnsupportedAudioFileException.html"], + \["UnsupportedCallbackException", "javax/security/auth/callback/UnsupportedCallbackException.html"], + \["UnsupportedCharsetException", "java/nio/charset/UnsupportedCharsetException.html"], + \["UnsupportedClassVersionError", "java/lang/UnsupportedClassVersionError.html"], + \["UnsupportedDataTypeException", "javax/activation/UnsupportedDataTypeException.html"], + \["UnsupportedEncodingException", "java/io/UnsupportedEncodingException.html"], + \["UnsupportedFlavorException", "java/awt/datatransfer/UnsupportedFlavorException.html"], + \["UnsupportedLookAndFeelException", "javax/swing/UnsupportedLookAndFeelException.html"], + \["UnsupportedOperationException", "java/lang/UnsupportedOperationException.html"], + \["URI", "java/net/URI.html"], + \["URIDereferencer", "javax/xml/crypto/URIDereferencer.html"], + \["URIException", "javax/print/URIException.html"], + \["URIParameter", "java/security/URIParameter.html"], + \["URIReference", "javax/xml/crypto/URIReference.html"], + \["URIReferenceException", "javax/xml/crypto/URIReferenceException.html"], + \["URIResolver", "javax/xml/transform/URIResolver.html"], + \["URISyntax", "javax/print/attribute/URISyntax.html"], + \["URISyntaxException", "java/net/URISyntaxException.html"], + \["URL", "java/net/URL.html"], + \["URLClassLoader", "java/net/URLClassLoader.html"], + \["URLConnection", "java/net/URLConnection.html"], + \["URLDataSource", "javax/activation/URLDataSource.html"], + \["URLDecoder", "java/net/URLDecoder.html"], + \["URLEncoder", "java/net/URLEncoder.html"], + \["URLStreamHandler", "java/net/URLStreamHandler.html"], + \["URLStreamHandlerFactory", "java/net/URLStreamHandlerFactory.html"], + \["URLStringHelper", "org/omg/CosNaming/NamingContextExtPackage/URLStringHelper.html"], + \["USER_EXCEPTION", "org/omg/PortableInterceptor/USER_EXCEPTION.html"], + \["UserDataHandler", "org/w3c/dom/UserDataHandler.html"], + \["UserException", "org/omg/CORBA/UserException.html"], + \["UShortSeqHelper", "org/omg/CORBA/UShortSeqHelper.html"], + \["UShortSeqHolder", "org/omg/CORBA/UShortSeqHolder.html"], + \["UTFDataFormatException", "java/io/UTFDataFormatException.html"], + \["Util", "javax/rmi/CORBA/Util.html"], + \["UtilDelegate", "javax/rmi/CORBA/UtilDelegate.html"], + \["Utilities", "javax/swing/text/Utilities.html"], + \["UUID", "java/util/UUID.html"], + \["ValidationEvent", "javax/xml/bind/ValidationEvent.html"], + \["ValidationEventCollector", "javax/xml/bind/util/ValidationEventCollector.html"], + \["ValidationEventHandler", "javax/xml/bind/ValidationEventHandler.html"], + \["ValidationEventImpl", "javax/xml/bind/helpers/ValidationEventImpl.html"], + \["ValidationEventLocator", "javax/xml/bind/ValidationEventLocator.html"], + \["ValidationEventLocatorImpl", "javax/xml/bind/helpers/ValidationEventLocatorImpl.html"], + \["ValidationException", "javax/xml/bind/ValidationException.html"], + \["Validator", "javax/xml/bind/Validator.html"], + \["Validator", "javax/xml/validation/Validator.html"], + \["ValidatorHandler", "javax/xml/validation/ValidatorHandler.html"], + \["ValueBase", "org/omg/CORBA/portable/ValueBase.html"], + \["ValueBaseHelper", "org/omg/CORBA/ValueBaseHelper.html"], + \["ValueBaseHolder", "org/omg/CORBA/ValueBaseHolder.html"], + \["ValueExp", "javax/management/ValueExp.html"], + \["ValueFactory", "org/omg/CORBA/portable/ValueFactory.html"], + \["ValueHandler", "javax/rmi/CORBA/ValueHandler.html"], + \["ValueHandlerMultiFormat", "javax/rmi/CORBA/ValueHandlerMultiFormat.html"], + \["ValueInputStream", "org/omg/CORBA/portable/ValueInputStream.html"], + \["ValueMember", "org/omg/CORBA/ValueMember.html"], + \["ValueMemberHelper", "org/omg/CORBA/ValueMemberHelper.html"], + \["ValueOutputStream", "org/omg/CORBA/portable/ValueOutputStream.html"], + \["VariableElement", "javax/lang/model/element/VariableElement.html"], + \["VariableHeightLayoutCache", "javax/swing/tree/VariableHeightLayoutCache.html"], + \["Vector", "java/util/Vector.html"], + \["VerifyError", "java/lang/VerifyError.html"], + \["VersionSpecHelper", "org/omg/CORBA/VersionSpecHelper.html"], + \["VetoableChangeListener", "java/beans/VetoableChangeListener.html"], + \["VetoableChangeListenerProxy", "java/beans/VetoableChangeListenerProxy.html"], + \["VetoableChangeSupport", "java/beans/VetoableChangeSupport.html"], + \["View", "javax/swing/text/View.html"], + \["ViewFactory", "javax/swing/text/ViewFactory.html"], + \["ViewportLayout", "javax/swing/ViewportLayout.html"], + \["ViewportUI", "javax/swing/plaf/ViewportUI.html"], + \["VirtualMachineError", "java/lang/VirtualMachineError.html"], + \["Visibility", "java/beans/Visibility.html"], + \["VisibilityHelper", "org/omg/CORBA/VisibilityHelper.html"], + \["VM_ABSTRACT", "org/omg/CORBA/VM_ABSTRACT.html"], + \["VM_CUSTOM", "org/omg/CORBA/VM_CUSTOM.html"], + \["VM_NONE", "org/omg/CORBA/VM_NONE.html"], + \["VM_TRUNCATABLE", "org/omg/CORBA/VM_TRUNCATABLE.html"], + \["VMID", "java/rmi/dgc/VMID.html"], + \["VoiceStatus", "javax/sound/midi/VoiceStatus.html"], + \["Void", "java/lang/Void.html"], + \["VolatileImage", "java/awt/image/VolatileImage.html"], + \["W3CDomHandler", "javax/xml/bind/annotation/W3CDomHandler.html"], + \["W3CEndpointReference", "javax/xml/ws/wsaddressing/W3CEndpointReference.html"], + \["W3CEndpointReferenceBuilder", "javax/xml/ws/wsaddressing/W3CEndpointReferenceBuilder.html"], + \["WCharSeqHelper", "org/omg/CORBA/WCharSeqHelper.html"], + \["WCharSeqHolder", "org/omg/CORBA/WCharSeqHolder.html"], + \["WeakHashMap", "java/util/WeakHashMap.html"], + \["WeakReference", "java/lang/ref/WeakReference.html"], + \["WebEndpoint", "javax/xml/ws/WebEndpoint.html"], + \["WebFault", "javax/xml/ws/WebFault.html"], + \["WebMethod", "javax/jws/WebMethod.html"], + \["WebParam", "javax/jws/WebParam.html"], + \["WebParam.Mode", "javax/jws/WebParam.Mode.html"], + \["WebResult", "javax/jws/WebResult.html"], + \["WebRowSet", "javax/sql/rowset/WebRowSet.html"], + \["WebService", "javax/jws/WebService.html"], + \["WebServiceClient", "javax/xml/ws/WebServiceClient.html"], + \["WebServiceContext", "javax/xml/ws/WebServiceContext.html"], + \["WebServiceException", "javax/xml/ws/WebServiceException.html"], + \["WebServiceFeature", "javax/xml/ws/WebServiceFeature.html"], + \["WebServiceFeatureAnnotation", "javax/xml/ws/spi/WebServiceFeatureAnnotation.html"], + \["WebServicePermission", "javax/xml/ws/WebServicePermission.html"], + \["WebServiceProvider", "javax/xml/ws/WebServiceProvider.html"], + \["WebServiceRef", "javax/xml/ws/WebServiceRef.html"], + \["WebServiceRefs", "javax/xml/ws/WebServiceRefs.html"], + \["WildcardType", "java/lang/reflect/WildcardType.html"], + \["WildcardType", "javax/lang/model/type/WildcardType.html"], + \["Window", "java/awt/Window.html"], + \["WindowAdapter", "java/awt/event/WindowAdapter.html"], + \["WindowConstants", "javax/swing/WindowConstants.html"], + \["WindowEvent", "java/awt/event/WindowEvent.html"], + \["WindowFocusListener", "java/awt/event/WindowFocusListener.html"], + \["WindowListener", "java/awt/event/WindowListener.html"], + \["WindowStateListener", "java/awt/event/WindowStateListener.html"], + \["WrappedPlainView", "javax/swing/text/WrappedPlainView.html"], + \["Wrapper", "java/sql/Wrapper.html"], + \["WritableByteChannel", "java/nio/channels/WritableByteChannel.html"], + \["WritableRaster", "java/awt/image/WritableRaster.html"], + \["WritableRenderedImage", "java/awt/image/WritableRenderedImage.html"], + \["WriteAbortedException", "java/io/WriteAbortedException.html"], + \["Writer", "java/io/Writer.html"], + \["WrongAdapter", "org/omg/PortableServer/POAPackage/WrongAdapter.html"], + \["WrongAdapterHelper", "org/omg/PortableServer/POAPackage/WrongAdapterHelper.html"], + \["WrongPolicy", "org/omg/PortableServer/POAPackage/WrongPolicy.html"], + \["WrongPolicyHelper", "org/omg/PortableServer/POAPackage/WrongPolicyHelper.html"], + \["WrongTransaction", "org/omg/CORBA/WrongTransaction.html"], + \["WrongTransactionHelper", "org/omg/CORBA/WrongTransactionHelper.html"], + \["WrongTransactionHolder", "org/omg/CORBA/WrongTransactionHolder.html"], + \["WStringSeqHelper", "org/omg/CORBA/WStringSeqHelper.html"], + \["WStringSeqHolder", "org/omg/CORBA/WStringSeqHolder.html"], + \["WStringValueHelper", "org/omg/CORBA/WStringValueHelper.html"], + \["X500Principal", "javax/security/auth/x500/X500Principal.html"], + \["X500PrivateCredential", "javax/security/auth/x500/X500PrivateCredential.html"], + \["X509Certificate", "java/security/cert/X509Certificate.html"], + \["X509Certificate", "javax/security/cert/X509Certificate.html"], + \["X509CertSelector", "java/security/cert/X509CertSelector.html"], + \["X509CRL", "java/security/cert/X509CRL.html"], + \["X509CRLEntry", "java/security/cert/X509CRLEntry.html"], + \["X509CRLSelector", "java/security/cert/X509CRLSelector.html"], + \["X509Data", "javax/xml/crypto/dsig/keyinfo/X509Data.html"], + \["X509EncodedKeySpec", "java/security/spec/X509EncodedKeySpec.html"], + \["X509ExtendedKeyManager", "javax/net/ssl/X509ExtendedKeyManager.html"], + \["X509Extension", "java/security/cert/X509Extension.html"], + \["X509IssuerSerial", "javax/xml/crypto/dsig/keyinfo/X509IssuerSerial.html"], + \["X509KeyManager", "javax/net/ssl/X509KeyManager.html"], + \["X509TrustManager", "javax/net/ssl/X509TrustManager.html"], + \["XAConnection", "javax/sql/XAConnection.html"], + \["XADataSource", "javax/sql/XADataSource.html"], + \["XAException", "javax/transaction/xa/XAException.html"], + \["XAResource", "javax/transaction/xa/XAResource.html"], + \["Xid", "javax/transaction/xa/Xid.html"], + \["XmlAccessOrder", "javax/xml/bind/annotation/XmlAccessOrder.html"], + \["XmlAccessorOrder", "javax/xml/bind/annotation/XmlAccessorOrder.html"], + \["XmlAccessorType", "javax/xml/bind/annotation/XmlAccessorType.html"], + \["XmlAccessType", "javax/xml/bind/annotation/XmlAccessType.html"], + \["XmlAdapter", "javax/xml/bind/annotation/adapters/XmlAdapter.html"], + \["XmlAnyAttribute", "javax/xml/bind/annotation/XmlAnyAttribute.html"], + \["XmlAnyElement", "javax/xml/bind/annotation/XmlAnyElement.html"], + \["XmlAttachmentRef", "javax/xml/bind/annotation/XmlAttachmentRef.html"], + \["XmlAttribute", "javax/xml/bind/annotation/XmlAttribute.html"], + \["XMLConstants", "javax/xml/XMLConstants.html"], + \["XMLCryptoContext", "javax/xml/crypto/XMLCryptoContext.html"], + \["XMLDecoder", "java/beans/XMLDecoder.html"], + \["XmlElement", "javax/xml/bind/annotation/XmlElement.html"], + \["XmlElement.DEFAULT", "javax/xml/bind/annotation/XmlElement.DEFAULT.html"], + \["XmlElementDecl", "javax/xml/bind/annotation/XmlElementDecl.html"], + \["XmlElementDecl.GLOBAL", "javax/xml/bind/annotation/XmlElementDecl.GLOBAL.html"], + \["XmlElementRef", "javax/xml/bind/annotation/XmlElementRef.html"], + \["XmlElementRef.DEFAULT", "javax/xml/bind/annotation/XmlElementRef.DEFAULT.html"], + \["XmlElementRefs", "javax/xml/bind/annotation/XmlElementRefs.html"], + \["XmlElements", "javax/xml/bind/annotation/XmlElements.html"], + \["XmlElementWrapper", "javax/xml/bind/annotation/XmlElementWrapper.html"], + \["XMLEncoder", "java/beans/XMLEncoder.html"], + \["XmlEnum", "javax/xml/bind/annotation/XmlEnum.html"], + \["XmlEnumValue", "javax/xml/bind/annotation/XmlEnumValue.html"], + \["XMLEvent", "javax/xml/stream/events/XMLEvent.html"], + \["XMLEventAllocator", "javax/xml/stream/util/XMLEventAllocator.html"], + \["XMLEventConsumer", "javax/xml/stream/util/XMLEventConsumer.html"], + \["XMLEventFactory", "javax/xml/stream/XMLEventFactory.html"], + \["XMLEventReader", "javax/xml/stream/XMLEventReader.html"], + \["XMLEventWriter", "javax/xml/stream/XMLEventWriter.html"], + \["XMLFilter", "org/xml/sax/XMLFilter.html"], + \["XMLFilterImpl", "org/xml/sax/helpers/XMLFilterImpl.html"], + \["XMLFormatter", "java/util/logging/XMLFormatter.html"], + \["XMLGregorianCalendar", "javax/xml/datatype/XMLGregorianCalendar.html"], + \["XmlID", "javax/xml/bind/annotation/XmlID.html"], + \["XmlIDREF", "javax/xml/bind/annotation/XmlIDREF.html"], + \["XmlInlineBinaryData", "javax/xml/bind/annotation/XmlInlineBinaryData.html"], + \["XMLInputFactory", "javax/xml/stream/XMLInputFactory.html"], + \["XmlJavaTypeAdapter", "javax/xml/bind/annotation/adapters/XmlJavaTypeAdapter.html"], + \["XmlJavaTypeAdapter.DEFAULT", "javax/xml/bind/annotation/adapters/XmlJavaTypeAdapter.DEFAULT.html"], + \["XmlJavaTypeAdapters", "javax/xml/bind/annotation/adapters/XmlJavaTypeAdapters.html"], + \["XmlList", "javax/xml/bind/annotation/XmlList.html"], + \["XmlMimeType", "javax/xml/bind/annotation/XmlMimeType.html"], + \["XmlMixed", "javax/xml/bind/annotation/XmlMixed.html"], + \["XmlNs", "javax/xml/bind/annotation/XmlNs.html"], + \["XmlNsForm", "javax/xml/bind/annotation/XmlNsForm.html"], + \["XMLObject", "javax/xml/crypto/dsig/XMLObject.html"], + \["XMLOutputFactory", "javax/xml/stream/XMLOutputFactory.html"], + \["XMLParseException", "javax/management/modelmbean/XMLParseException.html"], + \["XmlReader", "javax/sql/rowset/spi/XmlReader.html"], + \["XMLReader", "org/xml/sax/XMLReader.html"], + \["XMLReaderAdapter", "org/xml/sax/helpers/XMLReaderAdapter.html"], + \["XMLReaderFactory", "org/xml/sax/helpers/XMLReaderFactory.html"], + \["XmlRegistry", "javax/xml/bind/annotation/XmlRegistry.html"], + \["XMLReporter", "javax/xml/stream/XMLReporter.html"], + \["XMLResolver", "javax/xml/stream/XMLResolver.html"], + \["XmlRootElement", "javax/xml/bind/annotation/XmlRootElement.html"], + \["XmlSchema", "javax/xml/bind/annotation/XmlSchema.html"], + \["XmlSchemaType", "javax/xml/bind/annotation/XmlSchemaType.html"], + \["XmlSchemaType.DEFAULT", "javax/xml/bind/annotation/XmlSchemaType.DEFAULT.html"], + \["XmlSchemaTypes", "javax/xml/bind/annotation/XmlSchemaTypes.html"], + \["XmlSeeAlso", "javax/xml/bind/annotation/XmlSeeAlso.html"], + \["XMLSignature", "javax/xml/crypto/dsig/XMLSignature.html"], + \["XMLSignature.SignatureValue", "javax/xml/crypto/dsig/XMLSignature.SignatureValue.html"], + \["XMLSignatureException", "javax/xml/crypto/dsig/XMLSignatureException.html"], + \["XMLSignatureFactory", "javax/xml/crypto/dsig/XMLSignatureFactory.html"], + \["XMLSignContext", "javax/xml/crypto/dsig/XMLSignContext.html"], + \["XMLStreamConstants", "javax/xml/stream/XMLStreamConstants.html"], + \["XMLStreamException", "javax/xml/stream/XMLStreamException.html"], + \["XMLStreamReader", "javax/xml/stream/XMLStreamReader.html"], + \["XMLStreamWriter", "javax/xml/stream/XMLStreamWriter.html"], + \["XMLStructure", "javax/xml/crypto/XMLStructure.html"], + \["XmlTransient", "javax/xml/bind/annotation/XmlTransient.html"], + \["XmlType", "javax/xml/bind/annotation/XmlType.html"], + \["XmlType.DEFAULT", "javax/xml/bind/annotation/XmlType.DEFAULT.html"], + \["XMLValidateContext", "javax/xml/crypto/dsig/XMLValidateContext.html"], + \["XmlValue", "javax/xml/bind/annotation/XmlValue.html"], + \["XmlWriter", "javax/sql/rowset/spi/XmlWriter.html"], + \["XPath", "javax/xml/xpath/XPath.html"], + \["XPathConstants", "javax/xml/xpath/XPathConstants.html"], + \["XPathException", "javax/xml/xpath/XPathException.html"], + \["XPathExpression", "javax/xml/xpath/XPathExpression.html"], + \["XPathExpressionException", "javax/xml/xpath/XPathExpressionException.html"], + \["XPathFactory", "javax/xml/xpath/XPathFactory.html"], + \["XPathFactoryConfigurationException", "javax/xml/xpath/XPathFactoryConfigurationException.html"], + \["XPathFilter2ParameterSpec", "javax/xml/crypto/dsig/spec/XPathFilter2ParameterSpec.html"], + \["XPathFilterParameterSpec", "javax/xml/crypto/dsig/spec/XPathFilterParameterSpec.html"], + \["XPathFunction", "javax/xml/xpath/XPathFunction.html"], + \["XPathFunctionException", "javax/xml/xpath/XPathFunctionException.html"], + \["XPathFunctionResolver", "javax/xml/xpath/XPathFunctionResolver.html"], + \["XPathType", "javax/xml/crypto/dsig/spec/XPathType.html"], + \["XPathType.Filter", "javax/xml/crypto/dsig/spec/XPathType.Filter.html"], + \["XPathVariableResolver", "javax/xml/xpath/XPathVariableResolver.html"], + \["XSLTTransformParameterSpec", "javax/xml/crypto/dsig/spec/XSLTTransformParameterSpec.html"], + \["ZipEntry", "java/util/zip/ZipEntry.html"], + \["ZipError", "java/util/zip/ZipError.html"], + \["ZipException", "java/util/zip/ZipException.html"], + \["ZipFile", "java/util/zip/ZipFile.html"], + \["ZipInputStream", "java/util/zip/ZipInputStream.html"], + \["ZipOutputStream", "java/util/zip/ZipOutputStream.html"], + \["ZoneView", "javax/swing/text/ZoneView.html"], + \["_BindingIteratorImplBase", "org/omg/CosNaming/_BindingIteratorImplBase.html"], + \["_BindingIteratorStub", "org/omg/CosNaming/_BindingIteratorStub.html"], + \["_DynAnyFactoryStub", "org/omg/DynamicAny/_DynAnyFactoryStub.html"], + \["_DynAnyStub", "org/omg/DynamicAny/_DynAnyStub.html"], + \["_DynArrayStub", "org/omg/DynamicAny/_DynArrayStub.html"], + \["_DynEnumStub", "org/omg/DynamicAny/_DynEnumStub.html"], + \["_DynFixedStub", "org/omg/DynamicAny/_DynFixedStub.html"], + \["_DynSequenceStub", "org/omg/DynamicAny/_DynSequenceStub.html"], + \["_DynStructStub", "org/omg/DynamicAny/_DynStructStub.html"], + \["_DynUnionStub", "org/omg/DynamicAny/_DynUnionStub.html"], + \["_DynValueStub", "org/omg/DynamicAny/_DynValueStub.html"], + \["_IDLTypeStub", "org/omg/CORBA/_IDLTypeStub.html"], + \["_NamingContextExtStub", "org/omg/CosNaming/_NamingContextExtStub.html"], + \["_NamingContextImplBase", "org/omg/CosNaming/_NamingContextImplBase.html"], + \["_NamingContextStub", "org/omg/CosNaming/_NamingContextStub.html"], + \["_PolicyStub", "org/omg/CORBA/_PolicyStub.html"], + \["_Remote_Stub", "org/omg/stub/java/rmi/_Remote_Stub.html"], + \["_ServantActivatorStub", "org/omg/PortableServer/_ServantActivatorStub.html"], + \["_ServantLocatorStub", "org/omg/PortableServer/_ServantLocatorStub.html"]] +endif + diff --git a/vim/bundle/slimv/ftplugin/slimv.vim b/vim/bundle/slimv/ftplugin/slimv.vim new file mode 100644 index 0000000..bd94155 --- /dev/null +++ b/vim/bundle/slimv/ftplugin/slimv.vim @@ -0,0 +1,3676 @@ +" slimv.vim: The Superior Lisp Interaction Mode for VIM +" Version: 0.9.13 +" Last Change: 18 Jan 2017 +" Maintainer: Tamas Kovacs +" License: This file is placed in the public domain. +" No warranty, express or implied. +" *** *** Use At-Your-Own-Risk! *** *** +" +" ===================================================================== +" +" Load Once: +if &cp || exists( 'g:slimv_loaded' ) + finish +endif + +let g:slimv_loaded = 1 + +let g:slimv_windows = 0 +let g:slimv_cygwin = 0 +let g:slimv_osx = 0 + +if has( 'win32' ) || has( 'win95' ) || has( 'win64' ) || has( 'win16' ) + let g:slimv_windows = 1 +elseif has( 'win32unix' ) + let g:slimv_cygwin = 1 +elseif has( 'macunix' ) + let g:slimv_osx = 1 +endif + +if ( !exists( 'g:slimv_python_version' ) && has( 'python3' ) ) || +\ ( exists( 'g:slimv_python_version' ) && g:slimv_python_version == 3 ) + let s:py_cmd = 'python3 ' "note space + let s:pyfile_cmd = 'py3file ' +else + let s:py_cmd = 'python ' "note space + let s:pyfile_cmd = 'pyfile ' +endif + + +" ===================================================================== +" Functions used by global variable definitions +" ===================================================================== + +" Convert Cygwin path to Windows path, if needed +function! s:Cygpath( path ) + let path = a:path + if g:slimv_cygwin + let path = system( 'cygpath -w ' . path ) + let path = substitute( path, "\n", "", "g" ) + let path = substitute( path, "\\", "/", "g" ) + endif + return path +endfunction + +" Find swank.py in the Vim ftplugin directory (if not given in vimrc) +if !exists( 'g:swank_path' ) + let plugins = split( globpath( &runtimepath, 'ftplugin/**/swank.py'), '\n' ) + if len( plugins ) > 0 + let g:swank_path = s:Cygpath( plugins[0] ) + else + let g:swank_path = 'swank.py' + endif +endif + +" Get the filetype (Lisp dialect) used by Slimv +function! SlimvGetFiletype() + if &ft != '' + " Return Vim filetype if defined + return &ft + endif + + if match( tolower( g:slimv_lisp ), 'clojure' ) >= 0 || match( tolower( g:slimv_lisp ), 'clj' ) >= 0 + " Must be Clojure + return 'clojure' + endif + + " We have no clue, guess its lisp + return 'lisp' +endfunction + +" Try to autodetect SWANK and build the command to start the SWANK server +function! SlimvSwankCommand() + if exists( 'g:slimv_swank_clojure' ) && SlimvGetFiletype() =~ '.*clojure.*' + return g:slimv_swank_clojure + endif + if exists( 'g:slimv_swank_scheme' ) && SlimvGetFiletype() == 'scheme' + return g:slimv_swank_scheme + endif + if exists( 'g:slimv_swank_cmd' ) + return g:slimv_swank_cmd + endif + + if g:slimv_lisp == '' + let g:slimv_lisp = input( 'Enter Lisp path (or fill g:slimv_lisp in your vimrc): ', '', 'file' ) + endif + + let cmd = SlimvSwankLoader() + if cmd != '' + if g:slimv_windows || g:slimv_cygwin + return '!start /MIN ' . cmd + elseif g:slimv_osx + let result = system('osascript -e "exists application \"iterm\""') + if result[:-2] == 'true' + let path2as = globpath( &runtimepath, 'ftplugin/**/iterm.applescript') + return '!' . path2as . ' ' . cmd + else + " doubles quotes within 'cmd' need to become '\\\"' + return '!osascript -e "tell application \"Terminal\" to do script \"' . escape(escape(cmd, '"'), '\"') . '\""' + endif + elseif $STY != '' + " GNU screen under Linux + return "! screen -X eval 'title swank' 'screen " . cmd . "' 'select swank'" + elseif $TMUX != '' + " tmux under Linux + return "! tmux new-window -d -n swank '" . cmd . "'" + elseif $DISPLAY == '' + " No X, no terminal multiplexer. Cannot run swank server. + call SlimvErrorWait( 'No X server. Run Vim from screen/tmux or start SWANK server manually.' ) + return '' + else + " Must be Linux + return '! SWANK_PORT=' . g:swank_port . ' xterm -iconic -e ' . cmd . ' &' + endif + endif + return '' +endfunction + +" ===================================================================== +" Global variable definitions +" ===================================================================== + +" Host name or IP address of the SWANK server +if !exists( 'g:swank_host' ) + let g:swank_host = 'localhost' +endif + +" TCP port number to use for the SWANK server +if !exists( 'g:swank_port' ) + let g:swank_port = 4005 +endif + +" Find Lisp (if not given in vimrc) +if !exists( 'g:slimv_lisp' ) + let lisp = ['', ''] + if exists( 'g:slimv_preferred' ) + let lisp = SlimvAutodetect( tolower(g:slimv_preferred) ) + endif + if lisp[0] == '' + let lisp = SlimvAutodetect( '' ) + endif + let g:slimv_lisp = lisp[0] + if !exists( 'g:slimv_impl' ) + let g:slimv_impl = lisp[1] + endif +endif + +" Try to find out the Lisp implementation +" if not autodetected and not given in vimrc +if !exists( 'g:slimv_impl' ) + let g:slimv_impl = SlimvImplementation() +endif + +" REPL buffer name +if !exists( 'g:slimv_repl_name' ) + let g:slimv_repl_name = 'REPL' +endif + +" SLDB buffer name +if !exists( 'g:slimv_sldb_name' ) + let g:slimv_sldb_name = 'SLDB' +endif + +" INSPECT buffer name +if !exists( 'g:slimv_inspect_name' ) + let g:slimv_inspect_name = 'INSPECT' +endif + +" THREADS buffer name +if !exists( 'g:slimv_threads_name' ) + let g:slimv_threads_name = 'THREADS' +endif + +" Shall we open REPL buffer in split window? +if !exists( 'g:slimv_repl_split' ) + let g:slimv_repl_split = 1 +endif + +" Wrap long lines in REPL buffer +if !exists( 'g:slimv_repl_wrap' ) + let g:slimv_repl_wrap = 1 +endif + +" Wrap long lines in SLDB buffer +if !exists( 'g:slimv_sldb_wrap' ) + let g:slimv_sldb_wrap = 0 +endif + +" Maximum number of lines echoed from the evaluated form +if !exists( 'g:slimv_echolines' ) + let g:slimv_echolines = 4 +endif + +" Syntax highlighting for the REPL buffer +if !exists( 'g:slimv_repl_syntax' ) + let g:slimv_repl_syntax = 1 +endif + +" Specifies the behaviour of insert mode , , in the REPL buffer: +" 1: evaluates, / brings up command history +" 0: evaluates, / brings up command history, +" opens new line, / moves cursor up/down +if !exists( 'g:slimv_repl_simple_eval' ) + let g:slimv_repl_simple_eval = 1 +endif + +" Alternative value (in msec) for 'updatetime' while the REPL buffer is changing +if !exists( 'g:slimv_updatetime' ) + let g:slimv_updatetime = 500 +endif + +" Slimv keybinding set (0 = no keybindings) +if !exists( 'g:slimv_keybindings' ) + let g:slimv_keybindings = 1 +endif + +" Append Slimv menu to the global menu (0 = no menu) +if !exists( 'g:slimv_menu' ) + let g:slimv_menu = 1 +endif + +" Build the ctags command capable of generating lisp tags file +" The command can be run with execute 'silent !' . g:slimv_ctags +if !exists( 'g:slimv_ctags' ) + let ctags = split( globpath( '$vim,$vimruntime', 'ctags.exe' ), '\n' ) + if len( ctags ) > 0 + " Remove -a option to regenerate every time + let g:slimv_ctags = '"' . ctags[0] . '" -a --language-force=lisp *.lisp *.clj' + endif +endif + +" Name of tags file used by slimv for find-definitions +" If this is the empty string then no tags file is used +if !exists( 'g:slimv_tags_file' ) + let g:slimv_tags_file = tempname() +endif + +" Prepend tags file to the tags list +if g:slimv_tags_file != '' + if &tags == '' + let &tags=g:slimv_tags_file + else + let &tags=g:slimv_tags_file . ',' . &tags + endif +endif + +" Package/namespace handling +if !exists( 'g:slimv_package' ) + let g:slimv_package = 1 +endif + +" General timeout for various startup and connection events (seconds) +if !exists( 'g:slimv_timeout' ) + let g:slimv_timeout = 20 +endif + +" Use balloonexpr to display symbol description +if !exists( 'g:slimv_balloon' ) + let g:slimv_balloon = 1 +endif + +" Shall we use simple or fuzzy completion? +if !exists( 'g:slimv_simple_compl' ) + let g:slimv_simple_compl = 0 +endif + +" Custom for the Slimv plugin +if !exists( 'g:slimv_leader' ) + if exists( 'mapleader' ) && mapleader != ' ' + let g:slimv_leader = mapleader + else + let g:slimv_leader = ',' + endif +endif + +" Maximum number of lines searched backwards for indenting special forms +if !exists( 'g:slimv_indent_maxlines' ) + let g:slimv_indent_maxlines = 50 +endif + +" Special indentation for keyword lists +if !exists( 'g:slimv_indent_keylists' ) + let g:slimv_indent_keylists = 1 +endif + +" Maximum length of the REPL buffer +if !exists( 'g:slimv_repl_max_len' ) + let g:slimv_repl_max_len = 0 +endif + +" ===================================================================== +" Template definitions +" ===================================================================== + +if !exists( 'g:slimv_template_apropos' ) + if SlimvGetFiletype() =~ '.*clojure.*' + let g:slimv_template_apropos = '(find-doc "%1")' + else + let g:slimv_template_apropos = '(apropos "%1")' + endif +endif + + +" ===================================================================== +" Other non-global script variables +" ===================================================================== + +let s:indent = '' " Most recent indentation info +let s:last_update = 0 " The last update time for the REPL buffer +let s:save_updatetime = &updatetime " The original value for 'updatetime' +let s:save_showmode = &showmode " The original value for 'showmode' +let s:python_initialized = 0 " Is the embedded Python initialized? +let s:swank_version = '' " SWANK server version string +let s:swank_connected = 0 " Is the SWANK server connected? +let s:swank_package = '' " Package to use at the next SWANK eval +let s:swank_package_form = '' " The entire form that was used to set current package +let s:swank_form = '' " Form to send to SWANK +let s:refresh_disabled = 0 " Set this variable temporarily to avoid recursive REPL rehresh calls +let s:sldb_level = -1 " Are we in the SWANK debugger? -1 == no, else SLDB level +let s:break_on_exception = 0 " Enable debugger break on exceptions (for ritz-swank) +let s:compiled_file = '' " Name of the compiled file +let s:win_id = 0 " Counter for generating unique window id +let s:repl_buf = -1 " Buffer number for the REPL buffer +let s:current_buf = -1 " Swank action was requested from this buffer +let s:current_win = 0 " Swank action was requested from this window +let s:read_string_mode = 0 " Read string mode indicator +let s:arglist_line = 0 " Arglist was requested in this line ... +let s:arglist_col = 0 " ... and column +let s:inspect_path = [] " Inspection path of the current object +let s:skip_sc = 'synIDattr(synID(line("."), col("."), 0), "name") =~ "[Ss]tring\\|[Cc]omment"' + " Skip matches inside string or comment +let s:skip_q = 'getline(".")[col(".")-2] == "\\"' " Skip escaped double quote characters in matches +let s:frame_def = '^\s\{0,2}\d\{1,}:' " Regular expression to match SLDB restart or frame identifier +let s:spec_indent = 'flet\|labels\|macrolet\|symbol-macrolet' + " List of symbols need special indenting +let s:spec_param = 'defmacro' " List of symbols with special parameter list +let s:binding_form = 'let\|let\*' " List of symbols with binding list + +" ===================================================================== +" General utility functions +" ===================================================================== + +" Check that current SWANK version is same or newer than the given parameter +function! s:SinceVersion( ver ) + " Before ver 2.18 SWANK version string was a date of form YYYY-MM-DD + if len( a:ver ) >= 8 + " Checking for old style version string YYYY-MM-DD + if len( s:swank_version ) < 8 + " Current version is new style -> must be newer than the one we are checking for + return 1 + endif + else + " Checking for new style version string X.XX + if len( s:swank_version ) >= 8 + " Current version is old style -> must be older than the one we are checking for + return 0 + endif + endif + if s:swank_version >= a:ver + return 1 + else + return 0 + endif +endfunction + +" Display an error message +function! SlimvError( msg ) + echohl ErrorMsg + echo a:msg + echohl None +endfunction + +" Display an error message and a question, return user response +function! SlimvErrorAsk( msg, question ) + echohl ErrorMsg + let answer = input( a:msg . a:question ) + echo "" + echohl None + return answer +endfunction + +" Display an error message and wait for ENTER +function! SlimvErrorWait( msg ) + call SlimvErrorAsk( a:msg, " Press ENTER to continue." ) +endfunction + +" Shorten long messages to fit status line +function! SlimvShortEcho( msg ) + let saved=&shortmess + set shortmess+=T + exe "normal :echomsg a:msg\n" + let &shortmess=saved +endfunction + +" Go to the end of buffer, make sure the cursor is positioned +" after the last character of the buffer when in insert mode +function s:EndOfBuffer() + normal! G$ + if &virtualedit != 'all' + call cursor( line('$'), 99999 ) + endif +endfunction + +" Position the cursor at the end of the REPL buffer +" Optionally mark this position in Vim mark 's' +function! SlimvEndOfReplBuffer( force ) + if line( '.' ) >= b:repl_prompt_line - 1 || a:force + " Go to the end of file only if the user did not move up from here + call s:EndOfBuffer() + endif +endfunction + +" Remember the end of the REPL buffer: user may enter commands here +" Also remember the prompt, because the user may overwrite it +function! SlimvMarkBufferEnd( force ) + if exists( 'b:slimv_repl_buffer' ) + setlocal nomodified + call SlimvEndOfReplBuffer( a:force ) + let b:repl_prompt_line = line( '$' ) + let b:repl_prompt_col = len( getline('$') ) + 1 + let b:repl_prompt = getline( b:repl_prompt_line ) + endif +endfunction + +" Get REPL prompt line. Fix stored prompt position when corrupted +" (e.g. some lines were deleted from the REPL buffer) +function! s:GetPromptLine() + if b:repl_prompt_line > line( '$' ) + " Stored prompt line is corrupt + let b:repl_prompt_line = line( '$' ) + let b:repl_prompt_col = len( getline('$') ) + 1 + let b:repl_prompt = getline( b:repl_prompt_line ) + endif + return b:repl_prompt_line +endfunction + +" Generate unique window id for the current window +function s:MakeWindowId() + if g:slimv_repl_split && !exists('w:id') + let s:win_id = s:win_id + 1 + let w:id = s:win_id + endif +endfunction + +" Find and switch to window with the specified window id +function s:SwitchToWindow( id ) + for winnr in range( 1, winnr('$') ) + if getwinvar( winnr, 'id' ) is a:id + execute winnr . "wincmd w" + endif + endfor +endfunction + +" Save caller buffer identification +function! SlimvBeginUpdate() + call s:MakeWindowId() + let s:current_buf = bufnr( "%" ) + let s:current_win = getwinvar( winnr(), 'id' ) +endfunction + +" Switch to the buffer/window that was active before a swank action +function! SlimvRestoreFocus( hide_current_buf ) + if exists("b:previous_buf") + let new_buf = b:previous_buf + let new_win = b:previous_win + else + let new_buf = s:current_buf + let new_win = s:current_win + endif + let buf = bufnr( "%" ) + let win = getwinvar( winnr(), 'id' ) + if a:hide_current_buf + set nobuflisted + b # + endif + if winnr('$') > 1 && new_win != '' && new_win != win + " Switch to the caller window + call s:SwitchToWindow( new_win ) + endif + if new_buf >= 0 && buf != new_buf + " Switch to the caller buffer + execute "buf " . new_buf + endif +endfunction + +" Handle response coming from the SWANK listener +function! SlimvSwankResponse() + let s:swank_ok_result = '' + let s:refresh_disabled = 1 + silent execute s:py_cmd . 'swank_output(1)' + let s:refresh_disabled = 0 + let s:swank_action = '' + let s:swank_result = '' + silent execute s:py_cmd . 'swank_response("")' + + if s:swank_action == ':describe-symbol' && s:swank_result != '' + echo substitute(s:swank_result,'^\n*','','') + elseif s:swank_ok_result != '' + " Display the :ok result also in status bar in case the REPL buffer is not shown + let s:swank_ok_result = substitute(s:swank_ok_result,"\",'','g') + if s:swank_ok_result == '' + call SlimvShortEcho( '=> OK' ) + else + call SlimvShortEcho( '=> ' . s:swank_ok_result ) + endif + endif + if s:swank_actions_pending + let s:last_update = -1 + elseif s:last_update < 0 + " Remember the time when all actions are processed + let s:last_update = localtime() + endif + if s:swank_actions_pending == 0 && s:last_update >= 0 && s:last_update < localtime() - 2 + " All SWANK output handled long ago, restore original update frequency + let &updatetime = s:save_updatetime + else + " SWANK output still pending, keep higher update frequency + let &updatetime = g:slimv_updatetime + endif +endfunction + +" Execute the given command and write its output at the end of the REPL buffer +function! SlimvCommand( cmd ) + silent execute a:cmd + if g:slimv_updatetime < &updatetime + " Update more frequently until all swank responses processed + let &updatetime = g:slimv_updatetime + let s:last_update = -1 + endif +endfunction + +" Execute the given SWANK command, wait for and return the response +function! SlimvCommandGetResponse( name, cmd, timeout ) + let s:refresh_disabled = 1 + call SlimvCommand( a:cmd ) + let s:swank_action = '' + let s:swank_result = '' + let starttime = localtime() + let cmd_timeout = a:timeout + if cmd_timeout == 0 + let cmd_timeout = 3 + endif + while s:swank_action == '' && localtime()-starttime < cmd_timeout + execute s:py_cmd . "swank_output( 0 )" + silent execute s:py_cmd . 'swank_response("' . a:name . '")' + endwhile + let s:refresh_disabled = 0 + return s:swank_result +endfunction + +" Reload the contents of the REPL buffer from the output file if changed +function! SlimvRefreshReplBuffer() + if s:refresh_disabled + " Refresh is unwanted at the moment, probably another refresh is going on + return + endif + + if s:repl_buf == -1 + " REPL buffer not loaded + return + endif + + if s:swank_connected + call SlimvSwankResponse() + endif + + if exists("s:input_prompt") && s:input_prompt != '' + let answer = input( s:input_prompt ) + unlet s:input_prompt + echo "" + call SlimvCommand( s:py_cmd . 'swank_return("' . answer . '")' ) + endif +endfunction + +" This function re-triggers the CursorHold event +" after refreshing the REPL buffer +function! SlimvTimer() + if v:count > 0 + " Skip refreshing if the user started a command prefixed with a count + return + endif + " We don't want autocommands trigger during the quick switch to/from the REPL buffer + noautocmd call SlimvRefreshReplBuffer() + if mode() == 'i' || mode() == 'I' || mode() == 'r' || mode() == 'R' + if bufname('%') != g:slimv_sldb_name && bufname('%') != g:slimv_inspect_name && bufname('%') != g:slimv_threads_name + " Put '' twice into the typeahead buffer, which should not do anything + " just switch to replace/insert mode then back to insert/replace mode + " But don't do this for readonly buffers + call feedkeys("\\") + endif + else + " Put an incomplete 'f' command and an Esc into the typeahead buffer + call feedkeys("f\e", 'n') + endif +endfunction + +" Switch refresh mode on: +" refresh REPL buffer on frequent Vim events +function! SlimvRefreshModeOn() + augroup SlimvCursorHold + au! + execute "au CursorHold * :call SlimvTimer()" + execute "au CursorHoldI * :call SlimvTimer()" + augroup END +endfunction + +" Switch refresh mode off +function! SlimvRefreshModeOff() + augroup SlimvCursorHold + au! + augroup END +endfunction + +" Called when entering REPL buffer +function! SlimvReplEnter() + call SlimvAddReplMenu() + augroup SlimvReplChanged + au! + execute "au FileChangedRO " . g:slimv_repl_name . " :call SlimvRefreshModeOff()" + augroup END + call SlimvRefreshModeOn() +endfunction + +" Called when leaving REPL buffer +function! SlimvReplLeave() + try + " Check if REPL menu exists, then remove it + aunmenu REPL + execute ':unmap ' . g:slimv_leader . '\' + catch /.*/ + " REPL menu not found, we cannot remove it + endtry + if g:slimv_repl_split + call SlimvRefreshModeOn() + else + call SlimvRefreshModeOff() + endif +endfunction + +" Refresh cursor position in the REPL buffer after new lines appended +function! SlimvReplSetCursorPos( force ) + " We do not want these autocommands to fire, the buffer switch will be temporary + let savemark = getpos("'`'") + let save_ei = &eventignore + set eventignore=BufEnter,BufLeave,BufWinEnter + let win = winnr() + windo call SlimvMarkBufferEnd( a:force ) + execute win . "wincmd w" + let &eventignore = save_ei + call setpos("'`", savemark) +endfunction + +" View the given file in a top/bottom/left/right split window +function! s:SplitView( filename ) + " Check if we have at least two windows used by slimv (have a window id assigned) + let winnr1 = 0 + let winnr2 = 0 + for winnr in range( 1, winnr('$') ) + if getwinvar( winnr, 'id' ) != '' + let winnr2 = winnr1 + let winnr1 = winnr + endif + endfor + if winnr1 > 0 && winnr2 > 0 + " We have already at least two windows used by slimv + let winid = getwinvar( winnr(), 'id' ) + if bufnr("%") == s:current_buf && winid == s:current_win + " Keep the current window on screen, use the other window for the new buffer + if winnr1 != winnr() + execute winnr1 . "wincmd w" + else + execute winnr2 . "wincmd w" + endif + endif + execute "silent view! " . a:filename + else + " Generate unique window id for the old window if not yet done + call s:MakeWindowId() + " No windows yet, need to split + if g:slimv_repl_split == 1 + execute "silent topleft sview! " . a:filename + elseif g:slimv_repl_split == 2 + execute "silent botright sview! " . a:filename + elseif g:slimv_repl_split == 3 + execute "silent topleft vertical sview! " . a:filename + elseif g:slimv_repl_split == 4 + execute "silent botright vertical sview! " . a:filename + else + execute "silent view! " . a:filename + endif + " Generate unique window id for the new window as well + call s:MakeWindowId() + endif + stopinsert +endfunction + +" Open a buffer with the given name if not yet open, and switch to it +function! SlimvOpenBuffer( name ) + let buf = bufnr( '^' . a:name . '$' ) + if buf == -1 + " Create a new buffer + call s:SplitView( a:name ) + else + if g:slimv_repl_split + " Buffer is already created. Check if it is open in a window + let win = bufwinnr( buf ) + if win == -1 + " Create windows + call s:SplitView( a:name ) + else + " Switch to the buffer's window + if winnr() != win + execute win . "wincmd w" + endif + endif + else + execute "buffer " . buf + stopinsert + endif + endif + if s:current_buf != bufnr( "%" ) + " Keep track of the previous buffer and window + let b:previous_buf = s:current_buf + let b:previous_win = s:current_win + endif + setlocal buftype=nofile + setlocal noswapfile + setlocal modifiable +endfunction + +" Go to the end of the screen line +function s:EndOfScreenLine() + if len(getline('.')) < &columns + " g$ moves the cursor to the rightmost column if virtualedit=all + normal! $ + else + normal! g$ + endif +endfunction + +" Set special syntax rules for the REPL buffer +function! SlimvSetSyntaxRepl() + if SlimvGetFiletype() == 'scheme' + syn cluster replListCluster contains=@schemeListCluster,lispList + else + syn cluster replListCluster contains=@lispListCluster + endif + +if exists("g:lisp_rainbow") && g:lisp_rainbow != 0 + + if &bg == "dark" + hi def hlLevel0 ctermfg=red guifg=red1 + hi def hlLevel1 ctermfg=yellow guifg=orange1 + hi def hlLevel2 ctermfg=green guifg=yellow1 + hi def hlLevel3 ctermfg=cyan guifg=greenyellow + hi def hlLevel4 ctermfg=magenta guifg=green1 + hi def hlLevel5 ctermfg=red guifg=springgreen1 + hi def hlLevel6 ctermfg=yellow guifg=cyan1 + hi def hlLevel7 ctermfg=green guifg=slateblue1 + hi def hlLevel8 ctermfg=cyan guifg=magenta1 + hi def hlLevel9 ctermfg=magenta guifg=purple1 + else + hi def hlLevel0 ctermfg=red guifg=red3 + hi def hlLevel1 ctermfg=darkyellow guifg=orangered3 + hi def hlLevel2 ctermfg=darkgreen guifg=orange2 + hi def hlLevel3 ctermfg=blue guifg=yellow3 + hi def hlLevel4 ctermfg=darkmagenta guifg=olivedrab4 + hi def hlLevel5 ctermfg=red guifg=green4 + hi def hlLevel6 ctermfg=darkyellow guifg=paleturquoise3 + hi def hlLevel7 ctermfg=darkgreen guifg=deepskyblue4 + hi def hlLevel8 ctermfg=blue guifg=darkslateblue + hi def hlLevel9 ctermfg=darkmagenta guifg=darkviolet + endif + + if SlimvGetFiletype() =~ '.*\(clojure\|scheme\|racket\).*' + + syn region lispParen9 matchgroup=hlLevel9 start="`\=(" matchgroup=hlLevel9 end=")" matchgroup=replPrompt end="^\S\+>" contains=TOP,@Spell + syn region lispParen0 matchgroup=hlLevel8 start="`\=(" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen0,lispParen1,lispParen2,lispParen3,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen1 matchgroup=hlLevel7 start="`\=(" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen1,lispParen2,lispParen3,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen2 matchgroup=hlLevel6 start="`\=(" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen2,lispParen3,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen3 matchgroup=hlLevel5 start="`\=(" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen3,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen4 matchgroup=hlLevel4 start="`\=(" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen5 matchgroup=hlLevel3 start="`\=(" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen6 matchgroup=hlLevel2 start="`\=(" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen7 matchgroup=hlLevel1 start="`\=(" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen7,lispParen8,NoInParens + syn region lispParen8 matchgroup=hlLevel0 start="`\=(" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen8,NoInParens + + syn region lispParen9 matchgroup=hlLevel9 start="`\=\[" matchgroup=hlLevel9 end="\]" matchgroup=replPrompt end="^\S\+>" contains=TOP,@Spell + syn region lispParen0 matchgroup=hlLevel8 start="`\=\[" end="\]" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen0,lispParen1,lispParen2,lispParen3,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen1 matchgroup=hlLevel7 start="`\=\[" end="\]" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen1,lispParen2,lispParen3,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen2 matchgroup=hlLevel6 start="`\=\[" end="\]" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen2,lispParen3,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen3 matchgroup=hlLevel5 start="`\=\[" end="\]" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen3,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen4 matchgroup=hlLevel4 start="`\=\[" end="\]" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen5 matchgroup=hlLevel3 start="`\=\[" end="\]" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen6 matchgroup=hlLevel2 start="`\=\[" end="\]" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen7 matchgroup=hlLevel1 start="`\=\[" end="\]" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen7,lispParen8,NoInParens + syn region lispParen8 matchgroup=hlLevel0 start="`\=\[" end="\]" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen8,NoInParens + + syn region lispParen9 matchgroup=hlLevel9 start="`\={" matchgroup=hlLevel9 end="}" matchgroup=replPrompt end="^\S\+>" contains=TOP,@Spell + syn region lispParen0 matchgroup=hlLevel8 start="`\={" end="}" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen0,lispParen1,lispParen2,lispParen3,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen1 matchgroup=hlLevel7 start="`\={" end="}" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen1,lispParen2,lispParen3,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen2 matchgroup=hlLevel6 start="`\={" end="}" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen2,lispParen3,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen3 matchgroup=hlLevel5 start="`\={" end="}" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen3,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen4 matchgroup=hlLevel4 start="`\={" end="}" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen4,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen5 matchgroup=hlLevel3 start="`\={" end="}" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen5,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen6 matchgroup=hlLevel2 start="`\={" end="}" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen6,lispParen7,lispParen8,NoInParens + syn region lispParen7 matchgroup=hlLevel1 start="`\={" end="}" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen7,lispParen8,NoInParens + syn region lispParen8 matchgroup=hlLevel0 start="`\={" end="}" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=TOP,lispParen8,NoInParens + + else + + syn region lispParen0 matchgroup=hlLevel0 start="`\=(" skip="|.\{-}|" end=")" matchgroup=replPrompt end="^\S\+>" contains=@replListCluster,lispParen1,replPrompt + syn region lispParen1 contained matchgroup=hlLevel1 start="`\=(" skip="|.\{-}|" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=@replListCluster,lispParen2 + syn region lispParen2 contained matchgroup=hlLevel2 start="`\=(" skip="|.\{-}|" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=@replListCluster,lispParen3 + syn region lispParen3 contained matchgroup=hlLevel3 start="`\=(" skip="|.\{-}|" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=@replListCluster,lispParen4 + syn region lispParen4 contained matchgroup=hlLevel4 start="`\=(" skip="|.\{-}|" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=@replListCluster,lispParen5 + syn region lispParen5 contained matchgroup=hlLevel5 start="`\=(" skip="|.\{-}|" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=@replListCluster,lispParen6 + syn region lispParen6 contained matchgroup=hlLevel6 start="`\=(" skip="|.\{-}|" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=@replListCluster,lispParen7 + syn region lispParen7 contained matchgroup=hlLevel7 start="`\=(" skip="|.\{-}|" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=@replListCluster,lispParen8 + syn region lispParen8 contained matchgroup=hlLevel8 start="`\=(" skip="|.\{-}|" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=@replListCluster,lispParen9 + syn region lispParen9 contained matchgroup=hlLevel9 start="`\=(" skip="|.\{-}|" end=")" matchgroup=replPrompt end="^\S\+>"me=s-1,re=s-1 contains=@replListCluster,lispParen0 + + endif + +else + + if SlimvGetFiletype() !~ '.*clojure.*' + syn region lispList matchgroup=Delimiter start="(" skip="|.\{-}|" end=")" matchgroup=replPrompt end="^\S\+>" contains=@replListCluster + syn region lispBQList matchgroup=PreProc start="`(" skip="|.\{-}|" end=")" matchgroup=replPrompt end="^\S\+>" contains=@replListCluster + endif + +endif + + syn match replPrompt /^[^(]\S\+>/ + syn match replPrompt /^(\S\+)>/ + hi def link replPrompt Type +endfunction + +" Open a new REPL buffer +function! SlimvOpenReplBuffer() + call SlimvOpenBuffer( g:slimv_repl_name ) + setlocal noreadonly + let s:repl_buf = bufnr( "%" ) + let b:slimv_repl_buffer = 1 + call SlimvInitRepl() + if g:slimv_repl_syntax + call SlimvSetSyntaxRepl() + else + set syntax= + endif + + " Prompt and its line and column number in the REPL buffer + if !exists( 'b:repl_prompt' ) + let b:repl_prompt = '' + let b:repl_prompt_line = 1 + let b:repl_prompt_col = 1 + endif + + " Add keybindings valid only for the REPL buffer + inoremap :call SlimvSendCommand(1) + inoremap :call SlimvInterrupt() + inoremap SlimvHandleCW() + + if g:slimv_repl_simple_eval + inoremap =pumvisible() ? "\C-Y>" : "\End>\C-O>:call SlimvSendCommand(0)\CR>\End>" + inoremap =pumvisible() ? "\Up>" : SlimvHandleUp() + inoremap =pumvisible() ? "\Down>" : SlimvHandleDown() + else + inoremap =pumvisible() ? "\C-Y>" : SlimvHandleEnterRepl()=SlimvArglistOnEnter() + inoremap =pumvisible() ? "\Up>" : SlimvHandleUp() + inoremap =pumvisible() ? "\Down>" : SlimvHandleDown() + endif + + if exists( 'g:paredit_loaded' ) + inoremap PareditBackspace(1) + else + inoremap SlimvHandleBS() + endif + + if g:slimv_keybindings == 1 + execute 'noremap ' . g:slimv_leader.'. :call SlimvSendCommand(0)' + execute 'noremap ' . g:slimv_leader.'/ :call SlimvSendCommand(1)' + execute 'noremap ' . g:slimv_leader.' :call SlimvPreviousCommand()' + execute 'noremap ' . g:slimv_leader.' :call SlimvNextCommand()' + elseif g:slimv_keybindings == 2 + execute 'noremap ' . g:slimv_leader.'rs :call SlimvSendCommand(0)' + execute 'noremap ' . g:slimv_leader.'ro :call SlimvSendCommand(1)' + execute 'noremap ' . g:slimv_leader.'rp :call SlimvPreviousCommand()' + execute 'noremap ' . g:slimv_leader.'rn :call SlimvNextCommand()' + endif + + if g:slimv_repl_wrap + inoremap g + inoremap :call EndOfScreenLine() + noremap gk + noremap gj + noremap g + noremap :call EndOfScreenLine() + noremap k gk + noremap j gj + noremap 0 g0 + noremap $ :call EndOfScreenLine() + setlocal wrap + endif + + hi SlimvNormal term=none cterm=none gui=none + hi SlimvCursor term=reverse cterm=reverse gui=reverse + + augroup SlimvReplAutoCmd + au! + " Add autocommands specific to the REPL buffer + execute "au FileChangedShell " . g:slimv_repl_name . " :call SlimvRefreshReplBuffer()" + execute "au FocusGained " . g:slimv_repl_name . " :call SlimvRefreshReplBuffer()" + execute "au BufEnter " . g:slimv_repl_name . " :call SlimvReplEnter()" + execute "au BufLeave " . g:slimv_repl_name . " :call SlimvReplLeave()" + execute "au BufWinEnter " . g:slimv_repl_name . " :call SlimvMarkBufferEnd(1)" + execute "au TabEnter *" . " :call SlimvReplSetCursorPos(1)" + augroup END + + call SlimvRefreshReplBuffer() +endfunction + +" Clear the contents of the REPL buffer, keeping the last prompt only +function! SlimvClearReplBuffer() + let this_buf = bufnr( "%" ) + if s:repl_buf == -1 + call SlimvError( "There is no REPL buffer." ) + return + endif + if this_buf != s:repl_buf + let oldpos = winsaveview() + execute "buf " . s:repl_buf + endif + if b:repl_prompt_line > 1 + execute "normal! gg0d" . (b:repl_prompt_line-1) . "GG$" + let b:repl_prompt_line = 1 + endif + if this_buf != s:repl_buf + execute "buf " . this_buf + call winrestview( oldpos ) + endif +endfunction + +" Open a new Inspect buffer +function SlimvOpenInspectBuffer() + call SlimvOpenBuffer( g:slimv_inspect_name ) + let b:range_start = 0 + let b:range_end = 0 + let b:help = SlimvHelpInspect() + + " Add keybindings valid only for the Inspect buffer + noremap :call SlimvToggleHelp() + noremap :call SlimvHandleEnterInspect() + noremap :call SlimvSendSilent(['[-1]']) + execute 'noremap ' . g:slimv_leader.'q :call SlimvQuitInspect(1)' + + if version < 703 + " conceal mechanism is defined since Vim 7.3 + syn region inspectItem matchgroup=Ignore start="{\[\d\+\]\s*" end="\[]}" + syn region inspectAction matchgroup=Ignore start="{<\d\+>\s*" end="<>}" + else + syn region inspectItem matchgroup=Ignore start="{\[\d\+\]\s*" end="\[]}" concealends + syn region inspectAction matchgroup=Ignore start="{<\d\+>\s*" end="<>}" concealends + setlocal conceallevel=3 concealcursor=nc + endif + + hi def link inspectItem Special + hi def link inspectAction String + + syn match Special /^\[<<\].*$/ + syn match Special /^\[--....--\]$/ +endfunction + +" Open a new Threads buffer +function SlimvOpenThreadsBuffer() + call SlimvOpenBuffer( g:slimv_threads_name ) + let b:help = SlimvHelpThreads() + + " Add keybindings valid only for the Threads buffer + "noremap :call SlimvHandleEnterThreads() + noremap :call SlimvToggleHelp() + noremap :call SlimvKillThread() + execute 'noremap ' . g:slimv_leader.'r :call SlimvListThreads()' + execute 'noremap ' . g:slimv_leader.'d :call SlimvDebugThread()' + execute 'noremap ' . g:slimv_leader.'k :call SlimvKillThread()' + execute 'noremap ' . g:slimv_leader.'q :call SlimvQuitThreads()' +endfunction + +" Open a new SLDB buffer +function SlimvOpenSldbBuffer() + call SlimvOpenBuffer( g:slimv_sldb_name ) + + " Add keybindings valid only for the SLDB buffer + noremap :call SlimvHandleEnterSldb() + if g:slimv_keybindings == 1 + execute 'noremap ' . g:slimv_leader.'a :call SlimvDebugAbort()' + execute 'noremap ' . g:slimv_leader.'q :call SlimvDebugQuit()' + execute 'noremap ' . g:slimv_leader.'n :call SlimvDebugContinue()' + execute 'noremap ' . g:slimv_leader.'N :call SlimvDebugRestartFrame()' + elseif g:slimv_keybindings == 2 + execute 'noremap ' . g:slimv_leader.'da :call SlimvDebugAbort()' + execute 'noremap ' . g:slimv_leader.'dq :call SlimvDebugQuit()' + execute 'noremap ' . g:slimv_leader.'dn :call SlimvDebugContinue()' + execute 'noremap ' . g:slimv_leader.'dr :call SlimvDebugRestartFrame()' + endif + + " Set folding parameters + setlocal foldmethod=marker + setlocal foldmarker={{{,}}} + setlocal foldtext=substitute(getline(v:foldstart),'{{{','','') + call s:SetKeyword() + if g:slimv_sldb_wrap + setlocal wrap + endif + + if version < 703 + " conceal mechanism is defined since Vim 7.3 + syn match Ignore /{{{/ + syn match Ignore /}}}/ + else + setlocal conceallevel=3 concealcursor=nc + syn match Comment /{{{/ conceal + syn match Comment /}}}/ conceal + endif + syn match Type /^\s\{0,2}\d\{1,3}:/ + syn match Type /^\s\+in "\(.*\)" \(line\|byte\) \(\d\+\)$/ +endfunction + +" End updating an otherwise readonly buffer +function SlimvEndUpdate() + setlocal nomodifiable + setlocal nomodified +endfunction + +" Quit Inspector +function SlimvQuitInspect( force ) + " Clear the contents of the Inspect buffer + if exists( 'b:inspect_pos' ) + unlet b:inspect_pos + endif + setlocal modifiable + silent! %d _ + call SlimvEndUpdate() + if a:force + call SlimvCommand( s:py_cmd . 'swank_quit_inspector()' ) + endif + call SlimvRestoreFocus(1) +endfunction + +" Quit Threads +function SlimvQuitThreads() + " Clear the contents of the Threads buffer + setlocal modifiable + silent! %d _ + call SlimvEndUpdate() + call SlimvRestoreFocus(1) +endfunction + +" Quit Sldb +function SlimvQuitSldb() + " Clear the contents of the Sldb buffer + setlocal modifiable + silent! %d _ + call SlimvEndUpdate() + call SlimvRestoreFocus(1) +endfunction + +" Create help text for Inspect buffer +function SlimvHelpInspect() + let help = [] + call add( help, ' : toggle this help' ) + call add( help, ' : open object or select action under cursor' ) + call add( help, ' : go back to previous object' ) + call add( help, g:slimv_leader . 'q : quit' ) + return help +endfunction + +" Create help text for Threads buffer +function SlimvHelpThreads() + let help = [] + call add( help, ' : toggle this help' ) + call add( help, ' : kill thread' ) + call add( help, g:slimv_leader . 'k : kill thread' ) + call add( help, g:slimv_leader . 'd : debug thread' ) + call add( help, g:slimv_leader . 'r : refresh' ) + call add( help, g:slimv_leader . 'q : quit' ) + return help +endfunction + +" Write help text to current buffer at given line +function SlimvHelp( line ) + setlocal modifiable + if exists( 'b:help_shown' ) + let help = b:help + else + let help = ['Press for Help'] + endif + let b:help_line = a:line + call append( b:help_line, help ) +endfunction + +" Toggle help +function SlimvToggleHelp() + if exists( 'b:help_shown' ) + let lines = len( b:help ) + unlet b:help_shown + else + let lines = 1 + let b:help_shown = 1 + endif + setlocal modifiable + execute ":" . (b:help_line+1) . "," . (b:help_line+lines) . "d" + call SlimvHelp( b:help_line ) + call SlimvEndUpdate() +endfunction + +" Open SLDB buffer and place cursor on the given frame +function SlimvGotoFrame( frame ) + call SlimvOpenSldbBuffer() + let bcktrpos = search( '^Backtrace:', 'bcnw' ) + let line = getline( '.' ) + let item = matchstr( line, '^\s*' . a:frame . ':' ) + if item != '' && line('.') > bcktrpos + " Already standing on the frame + return + endif + + " Must locate the frame starting from the 'Backtrace:' string + call search( '^Backtrace:', 'bcw' ) + call search( '^\s*' . a:frame . ':', 'w' ) +endfunction + +" Set 'iskeyword' option depending on file type +function! s:SetKeyword() + if SlimvGetFiletype() =~ '.*\(clojure\|scheme\|racket\).*' + setlocal iskeyword+=+,-,*,/,%,<,=,>,:,$,?,!,@-@,94,~,#,\|,& + else + setlocal iskeyword+=+,-,*,/,%,<,=,>,:,$,?,!,@-@,94,~,#,\|,&,.,{,},[,] + endif +endfunction + +" Select symbol under cursor and return it +function! SlimvSelectSymbol() + call s:SetKeyword() + let oldpos = winsaveview() + if col('.') > 1 && getline('.')[col('.')-1] =~ '\s' + normal! h + endif + let symbol = expand('') + call winrestview( oldpos ) + return symbol +endfunction + +" Select symbol with possible prefixes under cursor and return it +function! SlimvSelectSymbolExt() + let save_iskeyword = &iskeyword + call s:SetKeyword() + setlocal iskeyword+=' + let symbol = expand('') + let &iskeyword = save_iskeyword + return symbol +endfunction + +" Select bottom level form the cursor is inside and copy it to register 's' +function! SlimvSelectForm( extended ) + if SlimvGetFiletype() == 'r' + silent! normal va( + silent! normal "sY + return 1 + endif + " Search the opening '(' if we are standing on a special form prefix character + let c = col( '.' ) - 1 + let firstchar = getline( '.' )[c] + while c < len( getline( '.' ) ) && match( "'`#", getline( '.' )[c] ) >= 0 + normal! l + let c = c + 1 + endwhile + normal! va( + let p1 = getpos('.') + normal! o + let p2 = getpos('.') + if firstchar != '(' && p1[1] == p2[1] && (p1[2] == p2[2] || p1[2] == p2[2]+1) + " Empty selection and no paren found, select current word instead + normal! aw + elseif a:extended || firstchar != '(' + " Handle '() or #'() etc. type special syntax forms (but stop at prompt) + let c = col( '.' ) - 2 + while c >= 0 && match( ' \t()>', getline( '.' )[c] ) < 0 + normal! h + let c = c - 1 + endwhile + endif + silent normal! "sy + let sel = SlimvGetSelection() + if sel == '' + call SlimvError( "Form is empty." ) + return 0 + elseif sel == '(' || sel == '[' || sel == '{' + call SlimvError( "Form is unbalanced." ) + return 0 + else + return 1 + endif +endfunction + +" Find starting '(' of a top level form +function! SlimvFindDefunStart() + let l = line( '.' ) + let matchb = max( [l-200, 1] ) + if SlimvGetFiletype() == 'r' + while searchpair( '(', '', ')', 'bW', s:skip_sc, matchb ) || searchpair( '{', '', '}', 'bW', s:skip_sc, matchb ) || searchpair( '\[', '', '\]', 'bW', s:skip_sc, matchb ) + endwhile + else + while searchpair( '(', '', ')', 'bW', s:skip_sc, matchb ) + endwhile + endif +endfunction + +" Select top level form the cursor is inside and copy it to register 's' +function! SlimvSelectDefun() + call SlimvFindDefunStart() + if SlimvGetFiletype() == 'r' + " The cursor must be on the enclosing paren character + silent! normal v%"sY + return 1 + else + return SlimvSelectForm( 1 ) + endif +endfunction + +" Return the contents of register 's' +function! SlimvGetSelection() + return getreg( 's' ) +endfunction + +" Find language specific package/namespace definition backwards +" Set it as the current package for the next swank action +function! SlimvFindPackage() + if !g:slimv_package || SlimvGetFiletype() == 'scheme' + return + endif + let oldpos = winsaveview() + let save_ic = &ignorecase + set ignorecase + if SlimvGetFiletype() =~ '.*clojure.*' + let string = '\(in-ns\|ns\)' + else + let string = '\(cl:\|common-lisp:\|\)in-package' + endif + let found = 0 + let searching = search( '(\s*' . string . '\s', 'bcW' ) + while searching + " Search for the previos occurrence + if synIDattr( synID( line('.'), col('.'), 0), 'name' ) !~ '[Ss]tring\|[Cc]omment' + " It is not inside a comment or string + let found = 1 + break + endif + let searching = search( '(\s*' . string . '\s', 'bW' ) + endwhile + if found + " Find the package name with all folds open + normal! zn + silent normal! w + let l:package_command = expand('') + silent normal! w + let l:packagename_tokens = split(expand(''),')\|\s') + normal! zN + if l:packagename_tokens != [] + " Remove quote character from package name + let s:swank_package = substitute( l:packagename_tokens[0], "'", '', '' ) + let s:swank_package_form = "(" . l:package_command . " " . l:packagename_tokens[0] . ")\n" + else + let s:swank_package = '' + let s:swank_package_form = '' + endif + endif + let &ignorecase = save_ic + call winrestview( oldpos ) +endfunction + +" Execute the given SWANK command with current package defined +function! SlimvCommandUsePackage( cmd ) + call SlimvFindPackage() + let s:refresh_disabled = 1 + call SlimvCommand( a:cmd ) + let s:swank_package = '' + let s:swank_package_form = '' + let s:refresh_disabled = 0 + call SlimvRefreshReplBuffer() +endfunction + +" Initialize embedded Python and connect to SWANK server +function! SlimvConnectSwank() + if !s:python_initialized + if ( s:py_cmd == 'python3 ' && ! has('python3') ) || + \ ( s:py_cmd == 'python ' && ! has('python' ) ) + call SlimvErrorWait( 'Vim is compiled without the Python feature or Python is not installed. Unable to run SWANK client.' ) + return 0 + endif + execute s:py_cmd . 'import vim' + execute s:pyfile_cmd . g:swank_path + let s:python_initialized = 1 + endif + + + if !s:swank_connected + let s:swank_version = '' + let s:lisp_version = '' + if g:swank_host == '' + let g:swank_host = input( 'Swank server host name: ', 'localhost' ) + endif + execute s:py_cmd . 'swank_connect("' . g:swank_host . '", ' . g:swank_port . ', "result" )' + if result != '' && ( g:swank_host == 'localhost' || g:swank_host == '127.0.0.1' ) + " SWANK server is not running, start server if possible + let swank = SlimvSwankCommand() + if swank != '' + redraw + echon "\rStarting SWANK server..." + silent execute swank + let starttime = localtime() + while result != '' && localtime()-starttime < g:slimv_timeout + sleep 500m + execute s:py_cmd . 'swank_connect("' . g:swank_host . '", ' . g:swank_port . ', "result" )' + endwhile + redraw! + endif + endif + if result != '' + " Display connection error message + call SlimvErrorWait( result ) + return 0 + endif + + " Connected to SWANK server + redraw + echon "\rGetting SWANK connection info..." + let starttime = localtime() + while s:swank_version == '' && localtime()-starttime < g:slimv_timeout + call SlimvSwankResponse() + endwhile + + " Require some contribs + let contribs = 'swank-presentations swank-fancy-inspector swank-c-p-c swank-arglists' + if SlimvGetFiletype() == 'lisp' + let contribs = 'swank-asdf swank-package-fu ' . contribs + endif + if g:slimv_simple_compl == 0 + let contribs = contribs . ' swank-fuzzy' + endif + execute s:py_cmd . "swank_require('(" . contribs . ")')" + call SlimvSwankResponse() + if s:SinceVersion( '2011-12-04' ) + execute s:py_cmd . "swank_require('swank-repl')" + call SlimvSwankResponse() + endif + if s:SinceVersion( '2008-12-23' ) + call SlimvCommandGetResponse( ':create-repl', s:py_cmd . 'swank_create_repl()', g:slimv_timeout ) + endif + let s:swank_connected = 1 + redraw + echon "\rConnected to SWANK server on port " . g:swank_port . "." + if exists( "g:swank_block_size" ) && SlimvGetFiletype() == 'lisp' + " Override SWANK connection output buffer size + if s:SinceVersion( '2014-09-08' ) + let cmd = "(progn (setf (slot-value (swank::connection.user-output swank::*emacs-connection*) 'swank/gray::buffer)" + else + let cmd = "(progn (setf (slot-value (swank::connection.user-output swank::*emacs-connection*) 'swank-backend::buffer)" + endif + let cmd = cmd . " (make-string " . g:swank_block_size . ")) nil)" + call SlimvSend( [cmd], 0, 1 ) + endif + if exists( "*SlimvReplInit" ) + " Perform implementation specific REPL initialization if supplied + call SlimvReplInit( s:lisp_version ) + endif + endif + + return s:swank_connected +endfunction + +" Send argument to Lisp server for evaluation +function! SlimvSend( args, echoing, output ) + if ! SlimvConnectSwank() + return + endif + + " Send the lines to the client for evaluation + let text = join( a:args, "\n" ) . "\n" + + let s:refresh_disabled = 1 + let s:swank_form = text + if a:echoing && g:slimv_echolines != 0 + if g:slimv_echolines > 0 + let nlpos = match( s:swank_form, "\n", 0, g:slimv_echolines ) + if nlpos > 0 + " Echo only the first g:slimv_echolines number of lines + let trimmed = strpart( s:swank_form, nlpos ) + let s:swank_form = strpart( s:swank_form, 0, nlpos ) + let ending = s:CloseForm( s:swank_form ) + if ending != 'ERROR' + if substitute( trimmed, '\s\|\n', '', 'g' ) == '' + " Only whitespaces are trimmed + let s:swank_form = s:swank_form . ending . "\n" + else + " Valuable characters trimmed, indicate it by printing "..." + let s:swank_form = s:swank_form . " ..." . ending . "\n" + endif + endif + endif + endif + if a:output + silent execute s:py_cmd . 'append_repl("s:swank_form", 1)' + endif + let s:swank_form = text + elseif a:output + " Open a new line for the output + silent execute s:py_cmd . " append_repl('\\n', 0)" + endif + call SlimvCommand( s:py_cmd . 'swank_input("s:swank_form")' ) + let s:swank_package = '' + let s:swank_package_form = '' + let s:refresh_disabled = 0 + call SlimvRefreshModeOn() + call SlimvRefreshReplBuffer() +endfunction + +" Eval arguments in Lisp REPL +function! SlimvEval( args ) + call SlimvSend( a:args, 1, 1 ) +endfunction + +" Send argument silently to SWANK +function! SlimvSendSilent( args ) + call SlimvSend( a:args, 0, 0 ) +endfunction + +" Set command line after the prompt +function! SlimvSetCommandLine( cmd ) + let line = getline( "." ) + if line( "." ) == s:GetPromptLine() + " The prompt is in the line marked by b:repl_prompt_line + let promptlen = len( b:repl_prompt ) + else + let promptlen = 0 + endif + if len( line ) > promptlen + let line = strpart( line, 0, promptlen ) + endif + + if s:GetPromptLine() < line( '$' ) + " Delete extra lines after the prompt + let c = col( '.' ) + execute (s:GetPromptLine()+1) . ',' . (line('$')) . 'd_' + call cursor( line('.'), c ) + endif + + let lines = split( a:cmd, '\n' ) + if len(lines) > 0 + let line = line . lines[0] + endif + call setline( ".", line ) + if len(lines) > 1 + call append( s:GetPromptLine(), lines[1:] ) + endif + set nomodified +endfunction + +" Add command list to the command history +function! SlimvAddHistory( cmd ) + if !exists( 'g:slimv_cmdhistory' ) + let g:slimv_cmdhistory = [] + endif + let i = 0 + let form = join( a:cmd, "\n" ) + " Trim leading and trailing whitespaces from the command + let form = substitute( form, '^\s*\(.*[^ ]\)\s*', '\1', 'g' ) + if len( form ) > 1 || len( g:slimv_cmdhistory ) == 0 || form != g:slimv_cmdhistory[-1] + " Add command only if differs from the last one + call add( g:slimv_cmdhistory, form ) + endif + let g:slimv_cmdhistorypos = len( g:slimv_cmdhistory ) +endfunction + +" Recall command from the command history at the marked position +function! SlimvRecallHistory( direction ) + let searchtext = '' + let l = line( '.' ) + let c = col( '.' ) + let set_cursor_pos = 0 + if line( '.' ) == s:GetPromptLine() && c > b:repl_prompt_col + " Search for lines beginning with the text up to the cursor position + let searchtext = strpart( getline('.'), b:repl_prompt_col-1, c-b:repl_prompt_col ) + let searchtext = substitute( searchtext, '^\s*$', '', 'g' ) + let searchtext = substitute( searchtext, '^\s*\(.*[^ ]\)', '\1', 'g' ) + endif + let historypos = g:slimv_cmdhistorypos + let g:slimv_cmdhistorypos = g:slimv_cmdhistorypos + a:direction + while g:slimv_cmdhistorypos >= 0 && g:slimv_cmdhistorypos < len( g:slimv_cmdhistory ) + let cmd = g:slimv_cmdhistory[g:slimv_cmdhistorypos] + if len(cmd) >= len(searchtext) && strpart(cmd, 0, len(searchtext)) == searchtext + call SlimvSetCommandLine( g:slimv_cmdhistory[g:slimv_cmdhistorypos] ) + return + endif + let g:slimv_cmdhistorypos = g:slimv_cmdhistorypos + a:direction + endwhile + if searchtext == '' + call SlimvSetCommandLine( "" ) + else + let g:slimv_cmdhistorypos = historypos + endif +endfunction + +" Return missing parens, double quotes, etc to properly close form +function! s:CloseForm( form ) + let end = '' + let i = 0 + while i < len( a:form ) + if a:form[i] == '"' + " Inside a string + let end = '"' . end + let i += 1 + while i < len( a:form ) + if a:form[i] == '\' + " Ignore next character + let i += 2 + elseif a:form[i] == '"' + let end = end[1:] + break + else + let i += 1 + endif + endwhile + elseif a:form[i] == ';' + " Inside a comment + let end = "\n" . end + let cend = match(a:form, "\n", i) + if cend == -1 + break + endif + let i = cend + let end = end[1:] + else + " We are outside of strings and comments, now we shall count parens + if a:form[i] == '(' + let end = ')' . end + elseif a:form[i] == '[' && SlimvGetFiletype() =~ '.*\(clojure\|scheme\|racket\).*' + let end = ']' . end + elseif a:form[i] == '{' && SlimvGetFiletype() =~ '.*\(clojure\|scheme\|racket\).*' + let end = '}' . end + elseif a:form[i] == ')' || ((a:form[i] == ']' || a:form[i] == '}') && SlimvGetFiletype() =~ '.*\(clojure\|scheme\|racket\).*') + if len( end ) == 0 || end[0] != a:form[i] + " Oops, too many closing parens or invalid closing paren + return 'ERROR' + endif + let end = end[1:] + endif + endif + let i += 1 + endwhile + return end +endfunction + +" Some multi-byte characters screw up the built-in lispindent() +" This function is a wrapper that tries to fix it +" TODO: implement custom indent procedure and omit lispindent() +function SlimvLispindent( lnum ) + set lisp + let li = lispindent( a:lnum ) + set nolisp + let backline = max([a:lnum-g:slimv_indent_maxlines, 1]) + let oldpos = getpos( '.' ) + call cursor( oldpos[1], 1 ) + " Find containing form + let [lhead, chead] = searchpairpos( '(', '', ')', 'bW', s:skip_sc, backline ) + if lhead == 0 + " No containing form, lispindent() is OK + call cursor( oldpos[1], oldpos[2] ) + return li + endif + " Find outer form + let [lparent, cparent] = searchpairpos( '(', '', ')', 'bW', s:skip_sc, backline ) + call cursor( oldpos[1], oldpos[2] ) + if lparent == 0 || lhead != lparent + " No outer form or starting above inner form, lispindent() is OK + return li + endif + " Count extra bytes before the function header + let header = strpart( getline( lparent ), 0 ) + let total_extra = 0 + let extra = 0 + let c = 0 + while a:lnum > 0 && c < chead-1 + let bytes = byteidx( header, c+1 ) - byteidx( header, c ) + if bytes > 1 + let total_extra = total_extra + bytes - 1 + if c >= cparent && extra < 10 + " Extra bytes in the outer function header + let extra = extra + bytes - 1 + endif + endif + let c = c + 1 + endwhile + if total_extra == 0 + " No multi-byte character, lispindent() is OK + return li + endif + " In some cases ending spaces add up to lispindent() if there are multi-byte characters + let ending_sp = len( matchstr( getline( lparent ), ' *$' ) ) + " Determine how wrong lispindent() is based on the number of extra bytes + " These values were determined empirically + if lparent == a:lnum - 1 + " Function header is in the previous line + if extra == 0 && total_extra > 1 + let ending_sp = ending_sp + 1 + endif + return li + [0, 1, 0, -3, -3, -3, -5, -5, -7, -7, -8][extra] - ending_sp + else + " Function header is in an upper line + if extra == 0 || total_extra == extra + let ending_sp = 0 + endif + return li + [0, 1, 0, -2, -2, -3, -3, -3, -3, -3, -3][extra] - ending_sp + endif +endfunction + +" Return Lisp source code indentation at the given line +" Does not keep the cursor position +function! SlimvIndentUnsafe( lnum ) + if &autoindent == 0 || a:lnum <= 1 + " Start of the file + return 0 + endif + let pnum = prevnonblank(a:lnum - 1) + if pnum == 0 + " Hit the start of the file, use zero indent. + return 0 + endif + let oldpos = getpos( '.' ) + let linenum = a:lnum + + " Handle multi-line string + let plen = len( getline( pnum ) ) + if synIDattr( synID( pnum, plen, 0), 'name' ) =~ '[Ss]tring' && getline(pnum)[plen-1] != '"' + " Previous non-blank line ends with an unclosed string, so this is a multi-line string + let [l, c] = searchpairpos( '"', '', '"', 'bnW', s:skip_q ) + if l == pnum && c > 0 + " Indent to the opening double quote (if found) + return c + else + return SlimvLispindent( linenum ) + endif + endif + if synIDattr( synID( pnum, 1, 0), 'name' ) =~ '[Ss]tring' && getline(pnum)[0] != '"' + " Previous non-blank line is the last line of a multi-line string + call cursor( pnum, 1 ) + " First find the end of the multi-line string (omit \" characters) + let [lend, cend] = searchpos( '[^\\]"', 'nW' ) + if lend > 0 && strpart(getline(lend), cend+1) =~ '(\|)\|\[\|\]\|{\|}' + " Structural change after the string, no special handling + else + " Find the start of the multi-line string (omit \" characters) + let [l, c] = searchpairpos( '"', '', '"', 'bnW', s:skip_q ) + if l > 0 && strpart(getline(l), 0, c-1) =~ '^\s*$' + " Nothing else before the string: indent to the opening " + return c - 1 + endif + if l > 0 + " Pretend that we are really after the first line of the multi-line string + let pnum = l + let linenum = l + 1 + endif + endif + call cursor( oldpos[1], oldpos[2] ) + endif + + " Handle special indentation style for flet, labels, etc. + " When searching for containing forms, don't go back + " more than g:slimv_indent_maxlines lines. + let backline = max([pnum-g:slimv_indent_maxlines, 1]) + let indent_keylists = g:slimv_indent_keylists + + " Check if the previous line actually ends with a multi-line subform + let parent = pnum + let [l, c] = searchpos( ')', 'bW' ) + if l == pnum + let [l, c] = searchpairpos( '(', '', ')', 'bW', s:skip_sc, backline ) + if l > 0 + " Make sure it is not a top level form and the containing form starts in the same line + let [l2, c2] = searchpairpos( '(', '', ')', 'bW', s:skip_sc, backline ) + if l2 == l + " Remember the first line of the multi-line form + let parent = l + endif + endif + endif + + " Find beginning of the innermost containing form + call cursor( oldpos[1], 1 ) + let [l, c] = searchpairpos( '(', '', ')', 'bW', s:skip_sc, backline ) + if l > 0 + if SlimvGetFiletype() =~ '.*\(clojure\|scheme\|racket\).*' + " Is this a clojure form with [] binding list? + call cursor( oldpos[1], oldpos[2] ) + let [lb, cb] = searchpairpos( '\[', '', '\]', 'bW', s:skip_sc, backline ) + if lb >= l && (lb > l || cb > c) + return cb + endif + endif + " Is this a form with special indentation? + let line = strpart( getline(l), c-1 ) + if match( line, '\c^(\s*\('.s:spec_indent.'\)\>' ) >= 0 + " Search for the binding list and jump to its end + if search( '(' ) > 0 + call searchpair( '(', '', ')', '', s:skip_sc ) + if line('.') == pnum + " We are indenting the first line after the end of the binding list + return c + 1 + endif + endif + elseif l == pnum + " If the containing form starts above this line then find the + " second outer containing form (possible start of the binding list) + let [l2, c2] = searchpairpos( '(', '', ')', 'bW', s:skip_sc, backline ) + if l2 > 0 + let line2 = strpart( getline(l2), c2-1 ) + if match( line2, '\c^(\s*\('.s:spec_param.'\)\>' ) >= 0 + if search( '(' ) > 0 + if line('.') == l && col('.') == c + " This is the parameter list of a special form + return c + endif + endif + endif + if SlimvGetFiletype() !~ '.*clojure.*' + if l2 == l && match( line2, '\c^(\s*\('.s:binding_form.'\)\>' ) >= 0 + " Is this a lisp form with binding list? + return c + endif + if match( line2, '\c^(\s*cond\>' ) >= 0 && match( line, '\c^(\s*t\>' ) >= 0 + " Is this the 't' case for a 'cond' form? + return c + endif + if match( line2, '\c^(\s*defpackage\>' ) >= 0 + let indent_keylists = 0 + endif + endif + " Go one level higher and check if we reached a special form + let [l3, c3] = searchpairpos( '(', '', ')', 'bW', s:skip_sc, backline ) + if l3 > 0 + " Is this a form with special indentation? + let line3 = strpart( getline(l3), c3-1 ) + if match( line3, '\c^(\s*\('.s:spec_indent.'\)\>' ) >= 0 + " This is the first body-line of a binding + return c + 1 + endif + if match( line3, '\c^(\s*defsystem\>' ) >= 0 + let indent_keylists = 0 + endif + " Finally go to the topmost level to check for some forms with special keyword indenting + let [l4, c4] = searchpairpos( '(', '', ')', 'brW', s:skip_sc, backline ) + if l4 > 0 + let line4 = strpart( getline(l4), c4-1 ) + if match( line4, '\c^(\s*defsystem\>' ) >= 0 + let indent_keylists = 0 + endif + endif + endif + endif + endif + endif + + " Restore all cursor movements + call cursor( oldpos[1], oldpos[2] ) + + " Check if the current form started in the previous nonblank line + if l == parent + " Found opening paren in the previous line + let line = getline(l) + let form = strpart( line, c ) + " Determine the length of the function part up to the 1st argument + let funclen = matchend( form, '\s*\S*\s*' ) + 1 + " Contract strings, remove comments + let form = substitute( form, '".\{-}[^\\]"', '""', 'g' ) + let form = substitute( form, ';.*$', '', 'g' ) + " Contract subforms by replacing them with a single character + let f = '' + while form != f + let f = form + let form = substitute( form, '([^()]*)', '0', 'g' ) + let form = substitute( form, '([^()]*$', '0', 'g' ) + let form = substitute( form, '\[[^\[\]]*\]', '0', 'g' ) + let form = substitute( form, '\[[^\[\]]*$', '0', 'g' ) + let form = substitute( form, '{[^{}]*}', '0', 'g' ) + let form = substitute( form, '{[^{}]*$', '0', 'g' ) + endwhile + " Find out the function name + let func = matchstr( form, '\<\k*\>' ) + " If it's a keyword, keep the indentation straight + if indent_keylists && strpart(func, 0, 1) == ':' + if form =~ '^:\S*\s\+\S' + " This keyword has an associated value in the same line + return c + else + " The keyword stands alone in its line with no associated value + return c + 1 + endif + endif + if SlimvGetFiletype() =~ '.*clojure.*' + " Fix clojure specific indentation issues not handled by the default lisp.vim + if match( func, 'defn$' ) >= 0 + return c + 1 + endif + else + if match( func, 'defgeneric$' ) >= 0 || match( func, 'defsystem$' ) >= 0 || match( func, 'aif$' ) >= 0 + return c + 1 + endif + endif + " Remove package specification + let func = substitute(func, '^.*:', '', '') + if func != '' && s:swank_connected + " Look how many arguments are on the same line + " If an argument is actually a multi-line subform, then replace it with a single character + let form = substitute( form, "([^()]*$", '0', 'g' ) + let form = substitute( form, "[()\\[\\]{}#'`,]", '', 'g' ) + let args_here = len( split( form ) ) - 1 + " Get swank indent info + let s:indent = '' + silent execute s:py_cmd . 'get_indent_info("' . func . '")' + if s:indent != '' && s:indent == args_here + " The next one is an &body argument, so indent by 2 spaces from the opening '(' + return c + 1 + endif + let llen = len( line ) + if synIDattr( synID( l, llen, 0), 'name' ) =~ '[Ss]tring' && line[llen-1] != '"' + " Parent line ends with a multi-line string + " lispindent() fails to handle it correctly + if s:indent == '' && args_here > 0 + " No &body argument, ignore lispindent() and indent to the 1st argument + return c + funclen - 1 + endif + endif + endif + endif + + " Use default Lisp indenting + let li = SlimvLispindent(linenum) + let line = strpart( getline(linenum-1), li-1 ) + let gap = matchend( line, '^(\s\+\S' ) + if gap >= 0 + " Align to the gap between the opening paren and the first atom + return li + gap - 2 + endif + return li +endfunction + +" Indentation routine, keeps original cursor position +function! SlimvIndent( lnum ) + let oldpos = getpos( '.' ) + let indent = SlimvIndentUnsafe( a:lnum ) + call cursor( oldpos[1], oldpos[2] ) + return indent +endfunction + +" Convert indent value to spaces or a mix of tabs and spaces +" depending on the value of 'expandtab' +function! s:MakeIndent( indent ) + if &expandtab + return repeat( ' ', a:indent ) + else + return repeat( "\", a:indent / &tabstop ) . repeat( ' ', a:indent % &tabstop ) + endif +endfunction + +" Send command line to REPL buffer +" Arguments: close = add missing closing parens +function! SlimvSendCommand( close ) + call SlimvRefreshModeOn() + let lastline = s:GetPromptLine() + let lastcol = b:repl_prompt_col + if lastline > 0 + if line( "." ) >= lastline + " Trim the prompt from the beginning of the command line + " The user might have overwritten some parts of the prompt + let cmdline = getline( lastline ) + let c = 0 + while c < lastcol - 1 && cmdline[c] == b:repl_prompt[c] + let c = c + 1 + endwhile + let cmd = [ strpart( getline( lastline ), c ) ] + + " Build a possible multi-line command + let l = lastline + 1 + while l <= line("$") + call add( cmd, strpart( getline( l ), 0) ) + let l = l + 1 + endwhile + + " Count the number of opening and closing braces + let end = s:CloseForm( join( cmd, "\n" ) ) + if end == 'ERROR' + " Too many closing parens + call SlimvErrorWait( "Too many or invalid closing parens found." ) + return + endif + let echoing = 0 + if a:close && end != '' + " Close form if necessary and evaluate it + let cmd[len(cmd)-1] = cmd[len(cmd)-1] . end + let end = '' + let echoing = 1 + endif + if end == '' + " Expression finished, let's evaluate it + " but first add it to the history + call SlimvAddHistory( cmd ) + " Evaluate, but echo only when form is actually closed here + call SlimvSend( cmd, echoing, 1 ) + else + " Expression is not finished yet, indent properly and wait for completion + " Indentation works only if lisp indentation is switched on + call SlimvArglist() + let l = line('.') + 1 + call append( '.', '' ) + call setline( l, s:MakeIndent( SlimvIndent(l) ) ) + normal! j$ + endif + endif + else + silent execute s:py_cmd . " append_repl('Slimv error: previous EOF mark not found, re-enter last form:\\n', 0)" + endif +endfunction + +" Close current top level form by adding the missing parens +function! SlimvCloseForm() + let l2 = line( '.' ) + call SlimvFindDefunStart() + let l1 = line( '.' ) + let form = [] + let l = l1 + while l <= l2 + call add( form, getline( l ) ) + let l = l + 1 + endwhile + let end = s:CloseForm( join( form, "\n" ) ) + if end == 'ERROR' + " Too many closing parens + call SlimvErrorWait( "Too many or invalid closing parens found." ) + elseif end != '' + " Add missing parens + if end[0] == "\n" + call append( l2, end[1:] ) + else + call setline( l2, getline( l2 ) . end ) + endif + endif + normal! % +endfunction + +" Handle insert mode 'Enter' keypress +function! SlimvHandleEnter() + let s:arglist_line = line('.') + let s:arglist_col = col('.') + if pumvisible() + " Pressing in a pop up selects entry. + return "\" + else + if exists( 'g:paredit_mode' ) && g:paredit_mode && g:paredit_electric_return + " Apply electric return + return PareditEnter() + else + " No electric return handling, just enter a newline + return "\" + endif + endif +endfunction + +" Display arglist after pressing Enter +function! SlimvArglistOnEnter() + let retval = "" + if s:arglist_line > 0 + if col('.') > len(getline('.')) + " Stay at the end of line + let retval = "\" + endif + let l = line('.') + if getline(l) == '' + " Add spaces to make the correct indentation + call setline( l, s:MakeIndent( SlimvIndent(l) ) ) + normal! $ + endif + call SlimvArglist( s:arglist_line, s:arglist_col ) + endif + let s:arglist_line = 0 + let s:arglist_col = 0 + + " This function is called from = mappings, return additional keypress + return retval +endfunction + +" Handle insert mode 'Tab' keypress by doing completion or indentation +function! SlimvHandleTab() + if pumvisible() + " Completions menu is active, go to next match + return "\" + endif + let c = col('.') + if c > 1 && getline('.')[c-2] =~ '\k' + " At the end of a keyword, bring up completions + return "\\" + endif + let indent = SlimvIndent(line('.')) + if c-1 < indent && getline('.') !~ '\S\+' + " We are left from the autoindent position, do an autoindent + call setline( line('.'), s:MakeIndent( indent ) ) + return "\" + endif + " No keyword to complete, no need for autoindent, just enter a + return "\" +endfunction + +" Handle insert mode 'Backspace' keypress in the REPL buffer +function! SlimvHandleBS() + if line( "." ) == s:GetPromptLine() && col( "." ) <= b:repl_prompt_col + " No BS allowed before the previous EOF mark + return "" + else + return "\" + endif +endfunction + +" Handle insert mode Ctrl-W keypress in the REPL buffer +function! SlimvHandleCW() + if line( "." ) == s:GetPromptLine() + let trim_prompt = substitute( b:repl_prompt, '\s\+$', '', 'g' ) + let promptlen = len( trim_prompt ) + if col( "." ) > promptlen + let after_prompt = strpart( getline("."), promptlen-1, col(".")-promptlen ) + else + let after_prompt = '' + endif + let word = matchstr( after_prompt, '^.*\s\S' ) + if len( word ) == 0 + " No word found after prompt, C-W not allowed + return "" + endif + endif + return "\" +endfunction + +" Recall previous command from command history +function! s:PreviousCommand() + if exists( 'g:slimv_cmdhistory' ) && g:slimv_cmdhistorypos > 0 + call SlimvRecallHistory( -1 ) + endif +endfunction + +" Recall next command from command history +function! s:NextCommand() + if exists( 'g:slimv_cmdhistory' ) && g:slimv_cmdhistorypos < len( g:slimv_cmdhistory ) + call SlimvRecallHistory( 1 ) + else + call SlimvSetCommandLine( "" ) + endif +endfunction + +" Handle insert mode 'Up' keypress in the REPL buffer +function! SlimvHandleUp() + let save_ve = &virtualedit + set virtualedit=onemore + if line( "." ) >= s:GetPromptLine() + call s:PreviousCommand() + else + normal! gk + endif + let &virtualedit=save_ve + return '' +endfunction + +" Handle insert mode 'Down' keypress in the REPL buffer +function! SlimvHandleDown() + let save_ve = &virtualedit + set virtualedit=onemore + if line( "." ) >= s:GetPromptLine() + call s:NextCommand() + else + normal! gj + endif + let &virtualedit=save_ve + return '' +endfunction + +" Make a fold at the cursor point in the current buffer +function SlimvMakeFold() + setlocal modifiable + normal! o }}}kA {{{0 + setlocal nomodifiable +endfunction + +" Handle insert mode 'Enter' keypress in the REPL buffer +function! SlimvHandleEnterRepl() + " Trim the prompt from the beginning of the command line + " The user might have overwritten some parts of the prompt + let lastline = s:GetPromptLine() + let lastcol = b:repl_prompt_col + let cmdline = getline( lastline ) + let c = 0 + while c < lastcol - 1 && cmdline[c] == b:repl_prompt[c] + let c = c + 1 + endwhile + + " Copy command line up to the cursor position + if line(".") == lastline + let cmd = [ strpart( cmdline, c, col(".") - c - 1 ) ] + else + let cmd = [ strpart( cmdline, c ) ] + endif + + " Build a possible multi-line command up to the cursor line/position + let l = lastline + 1 + while l <= line(".") + if line(".") == l + call add( cmd, strpart( getline( l ), 0, col(".") - 1) ) + else + call add( cmd, strpart( getline( l ), 0) ) + endif + let l = l + 1 + endwhile + + " Count the number of opening and closing braces in the command before the cursor + let end = s:CloseForm( join( cmd, "\n" ) ) + if end != 'ERROR' && end != '' + " Command part before cursor is unbalanced, insert newline + let s:arglist_line = line('.') + let s:arglist_col = col('.') + if pumvisible() + " Pressing in a pop up selects entry. + return "\" + else + if exists( 'g:paredit_mode' ) && g:paredit_mode && g:paredit_electric_return && lastline > 0 && line( "." ) >= lastline + " Apply electric return + return PareditEnter() + else + " No electric return handling, just enter a newline + return "\" + endif + endif + else + " Send current command line for evaluation + if &virtualedit != 'all' + call cursor( 0, 99999 ) + endif + call SlimvSendCommand(0) + endif + return '' +endfunction + +" Handle normal mode 'Enter' keypress in the SLDB buffer +function! SlimvHandleEnterSldb() + let line = getline('.') + if s:sldb_level >= 0 + " Check if Enter was pressed in a section printed by the SWANK debugger + " The source specification is within a fold, so it has to be tested first + let mlist = matchlist( line, '^\s\+in "\=\(.*\)"\= \(line\|byte\) \(\d\+\)$' ) + if len(mlist) + if g:slimv_repl_split + " Switch back to other window + execute "wincmd p" + endif + " Jump to the file at the specified position + if mlist[2] == 'line' + exec ":edit +" . mlist[3] . " " . mlist[1] + else + exec ":edit +" . mlist[3] . "go " . mlist[1] + endif + return + endif + if foldlevel('.') + " With a fold just toggle visibility + normal za + return + endif + let item = matchstr( line, s:frame_def ) + if item != '' + let item = substitute( item, '\s\|:', '', 'g' ) + if search( '^Backtrace:', 'bnW' ) > 0 + " Display item-th frame + call SlimvMakeFold() + silent execute s:py_cmd . 'swank_frame_locals("' . item . '")' + if SlimvGetFiletype() != 'scheme' && g:slimv_impl != 'clisp' + " Not implemented for CLISP or scheme + silent execute s:py_cmd . 'swank_frame_source_loc("' . item . '")' + endif + if SlimvGetFiletype() == 'lisp' && g:slimv_impl != 'clisp' && g:slimv_impl != 'allegro' + " Not implemented for CLISP or other lisp dialects + silent execute s:py_cmd . 'swank_frame_call("' . item . '")' + endif + call SlimvRefreshReplBuffer() + return + endif + if search( '^Restarts:', 'bnW' ) > 0 + " Apply item-th restart + call SlimvQuitSldb() + silent execute s:py_cmd . 'swank_invoke_restart("' . s:sldb_level . '", "' . item . '")' + call SlimvRefreshReplBuffer() + return + endif + endif + endif + + " No special treatment, perform the original function + execute "normal! \" +endfunction + +" Restore Inspector cursor position if the referenced title has already been visited +function SlimvSetInspectPos( title ) + if exists( 'b:inspect_pos' ) && has_key( b:inspect_pos, a:title ) + call winrestview( b:inspect_pos[a:title] ) + else + normal! gg0 + endif +endfunction + +" Handle normal mode 'Enter' keypress in the Inspector buffer +function! SlimvHandleEnterInspect() + let line = getline('.') + if line[0:9] == 'Inspecting' + " Reload inspected item + call SlimvSendSilent( ['[0]'] ) + return + endif + + " Find the closest [dd] or
token to the left of the cursor + let [l, c] = searchpos( '{\[\d\+\]', 'bncW' ) + let [l2, c2] = searchpos( '{<\d\+>', 'bncW' ) + if l < line('.') || (l2 == line('.') && c2 > c) + let l = l2 + let c = c2 + endif + + if l < line('.') + " No preceding token found, find the closest [dd] or
to the right + let [l, c] = searchpos( '{\[\d\+\]', 'ncW' ) + let [l2, c2] = searchpos( '{<\d\+>', 'ncW' ) + if l == 0 || l > line('.') || (l2 == line('.') && c2 < c) + let l = l2 + let c = c2 + endif + endif + + if l == line( '.' ) + " Keep the relevant part of the line + let line = strpart( line, c ) + endif + + if exists( 'b:inspect_title' ) && b:inspect_title != '' + " Save cursor position in case we'll return to this page later on + if !exists( 'b:inspect_pos' ) + let b:inspect_pos = {} + endif + let b:inspect_pos[b:inspect_title] = winsaveview() + endif + + if line[0] == '[' + if line =~ '^\[--more--\]$' + " More data follows, fetch next part + call SlimvCommand( s:py_cmd . 'swank_inspector_range()' ) + call SlimvRefreshReplBuffer() + return + elseif line =~ '^\[--all---\]$' + " More data follows, fetch all parts + echon "\rFetching all entries, please wait..." + let b:inspect_more = -1 + call SlimvCommand( s:py_cmd . 'swank_inspector_range()' ) + call SlimvRefreshReplBuffer() + let starttime = localtime() + while b:inspect_more < 0 && localtime()-starttime < g:slimv_timeout + " Wait for the first swank_inspector_range() call to finish + call SlimvRefreshReplBuffer() + endwhile + let starttime = localtime() + while b:inspect_more > 0 && localtime()-starttime < g:slimv_timeout + " There are more parts to fetch (1 entry is usually 4 parts) + echon "\rFetching all entries, please wait [" . (b:inspect_more / 4) . "]" + call SlimvCommand( s:py_cmd . 'swank_inspector_range()' ) + call SlimvRefreshReplBuffer() + if getchar(1) + " User is impatient, stop fetching + break + endif + endwhile + if b:inspect_more > 0 + echon "\rFetch exhausted. Select [--all---] to resume." + else + echon "\rSuccessfully fetched all entries." + endif + return + elseif line[0:3] == '[<<]' + " Pop back up in the inspector + let item = '-1' + else + " Inspect n-th part + let item = matchstr( line, '\d\+' ) + if item != '' + " Add item name to the object path + let entry = matchstr(line, '\[\d\+\]\s*\zs.\{-}\ze\s*\[\]}') + if entry == '' + let entry = matchstr(line, '\[\d\+\]\s*\zs.*') + endif + if entry == '' + let entry = 'Unknown object' + endif + if len( entry ) > 40 + " Crop if too long + let entry = strpart( entry, 0, 37 ) . '...' + endif + let s:inspect_path = s:inspect_path + [entry] + endif + endif + if item != '' + call SlimvSendSilent( ['[' . item . ']'] ) + return + endif + endif + + if line[0] == '<' + " Inspector n-th action + let item = matchstr( line, '\d\+' ) + if item != '' + call SlimvSendSilent( ['<' . item . '>'] ) + return + endif + endif + + " No special treatment, perform the original function + execute "normal! \" +endfunction + +" Go to command line and recall previous command from command history +function! SlimvPreviousCommand() + let save_ve = &virtualedit + set virtualedit=onemore + call SlimvEndOfReplBuffer(0) + if line( "." ) >= s:GetPromptLine() + call s:PreviousCommand() + endif + let &virtualedit=save_ve +endfunction + +" Go to command line and recall next command from command history +function! SlimvNextCommand() + let save_ve = &virtualedit + set virtualedit=onemore + call SlimvEndOfReplBuffer(0) + if line( "." ) >= s:GetPromptLine() + call s:NextCommand() + endif + let &virtualedit=save_ve +endfunction + +" Handle interrupt (Ctrl-C) keypress in the REPL buffer +function! SlimvInterrupt() + call SlimvCommand( s:py_cmd . 'swank_interrupt()' ) + call SlimvRefreshReplBuffer() +endfunction + +" Select a specific restart in debugger +function! SlimvDebugCommand( name, cmd ) + if SlimvConnectSwank() + if s:sldb_level >= 0 + if bufname('%') != g:slimv_sldb_name + call SlimvOpenSldbBuffer() + endif + call SlimvCommand( s:py_cmd . '' . a:cmd . '()' ) + call SlimvRefreshReplBuffer() + if s:sldb_level < 0 + " Swank exited the debugger + if bufname('%') != g:slimv_sldb_name + call SlimvOpenSldbBuffer() + endif + call SlimvQuitSldb() + else + echomsg 'Debugger re-activated by the SWANK server.' + endif + else + call SlimvError( "Debugger is not activated." ) + endif + endif +endfunction + +" Various debugger restarts +function! SlimvDebugAbort() + call SlimvDebugCommand( ":sldb-abort", "swank_invoke_abort" ) +endfunction + +function! SlimvDebugQuit() + call SlimvDebugCommand( ":throw-to-toplevel", "swank_throw_toplevel" ) +endfunction + +function! SlimvDebugContinue() + call SlimvDebugCommand( ":sldb-continue", "swank_invoke_continue" ) +endfunction + +" Restart execution of the frame with the same arguments +function! SlimvDebugRestartFrame() + let frame = s:DebugFrame() + if frame != '' + call SlimvCommand( s:py_cmd . 'swank_restart_frame("' . frame . '")' ) + call SlimvRefreshReplBuffer() + endif +endfunction + +" List current Lisp threads +function! SlimvListThreads() + if SlimvConnectSwank() + call SlimvCommand( s:py_cmd . 'swank_list_threads()' ) + call SlimvRefreshReplBuffer() + endif +endfunction + +" Kill thread(s) selected from the Thread List +function! SlimvKillThread() range + if SlimvConnectSwank() + if a:firstline == a:lastline + let line = getline('.') + let item = matchstr( line, '\d\+' ) + if bufname('%') != g:slimv_threads_name + " We are not in the Threads buffer, not sure which thread to kill + let item = input( 'Thread to kill: ', item ) + endif + if item != '' + call SlimvCommand( s:py_cmd . 'swank_kill_thread(' . item . ')' ) + call SlimvRefreshReplBuffer() + endif + echomsg 'Thread ' . item . ' is killed.' + else + for line in getline(a:firstline, a:lastline) + let item = matchstr( line, '\d\+' ) + if item != '' + call SlimvCommand( s:py_cmd . 'swank_kill_thread(' . item . ')' ) + endif + endfor + call SlimvRefreshReplBuffer() + endif + call SlimvListThreads() + endif +endfunction + +" Debug thread selected from the Thread List +function! SlimvDebugThread() + if SlimvConnectSwank() + let line = getline('.') + let item = matchstr( line, '\d\+' ) + let item = input( 'Thread to debug: ', item ) + if item != '' + call SlimvCommand( s:py_cmd . 'swank_debug_thread(' . item . ')' ) + call SlimvRefreshReplBuffer() + endif + endif +endfunction + +function! SlimvRFunction() + " search backwards for the alphanums before a '(' + let l = line('.') + let c = col('.') - 1 + let line = (getline('.'))[0:c] + let list = matchlist(line, '\([a-zA-Z0-9_.]\+\)\s*(') + if !len(list) + return "" + endif + let valid = filter(reverse(list), 'v:val != ""') + return valid[0] +endfunction + +" Display function argument list +" Optional argument is the number of characters typed after the keyword +function! SlimvArglist( ... ) + let retval = '' + let save_ve = &virtualedit + set virtualedit=all + if a:0 + " Symbol position supplied + let l = a:1 + let c = a:2 - 1 + let line = getline(l) + else + " Check symbol at cursor position + let l = line('.') + let line = getline(l) + let c = col('.') - 1 + if c >= len(line) + " Stay at the end of line + let c = len(line) - 1 + let retval = "\" + endif + if line[c-1] == ' ' + " Is this the space we have just inserted in a mapping? + let c = c - 1 + endif + endif + call s:SetKeyword() + if s:swank_connected && !s:read_string_mode && c > 0 && line[c-1] =~ '\k\|)\|\]\|}\|"' + " Display only if entering the first space after a keyword + let arg = '' + if SlimvGetFiletype() == 'r' + let arg = SlimvRFunction() + else + let matchb = max( [l-200, 1] ) + let [l0, c0] = searchpairpos( '(', '', ')', 'nbW', s:skip_sc, matchb ) + if l0 > 0 + " Found opening paren, let's find out the function name + while arg == '' && l0 <= l + let funcline = substitute( getline(l0), ';.*$', '', 'g' ) + let arg = matchstr( funcline, '\<\k*\>', c0 ) + let l0 = l0 + 1 + let c0 = 0 + endwhile + endif + endif + + if arg != '' + " Ask function argument list from SWANK + call SlimvFindPackage() + let msg = SlimvCommandGetResponse( ':operator-arglist', s:py_cmd . 'swank_op_arglist("' . arg . '")', 0 ) + if msg != '' + " Print argument list in status line with newlines removed. + " Disable showmode until the next ESC to prevent + " immeditate overwriting by the "-- INSERT --" text. + set noshowmode + let msg = substitute( msg, "\n", "", "g" ) + redraw + if SlimvGetFiletype() == 'r' + call SlimvShortEcho( arg . '(' . msg . ')' ) + elseif match( msg, "\\V" . arg ) != 1 " Use \V ('very nomagic') for exact string match instead of regex + " Function name is not received from REPL + call SlimvShortEcho( "(" . arg . ' ' . msg[1:] ) + else + call SlimvShortEcho( msg ) + endif + endif + endif + endif + + " This function is also called from = mappings, return additional keypress + let &virtualedit=save_ve + return retval +endfunction + +" Start and connect swank server +function! SlimvConnectServer() + if s:swank_connected + execute s:py_cmd . "swank_disconnect()" + let s:swank_connected = 0 + " Give swank server some time for disconnecting + sleep 500m + endif + if SlimvConnectSwank() + let repl_win = bufwinnr( s:repl_buf ) + if s:repl_buf == -1 || ( g:slimv_repl_split && repl_win == -1 ) + call SlimvOpenReplBuffer() + endif + endif +endfunction + +" Get the last region (visual block) +function! SlimvGetRegion(first, last) + let oldpos = winsaveview() + if a:first < a:last || ( a:first == line( "'<" ) && a:last == line( "'>" ) ) + let lines = getline( a:first, a:last ) + else + " No range was selected, select current paragraph + normal! vap + execute "normal! \" + call winrestview( oldpos ) + let lines = getline( "'<", "'>" ) + if lines == [] || lines == [''] + call SlimvError( "No range selected." ) + return [] + endif + endif + let firstcol = col( "'<" ) - 1 + let lastcol = col( "'>" ) - 2 + if lastcol >= 0 + let lines[len(lines)-1] = lines[len(lines)-1][ : lastcol] + else + let lines[len(lines)-1] = '' + endif + let lines[0] = lines[0][firstcol : ] + + " Find and set package/namespace definition preceding the region + call SlimvFindPackage() + call winrestview( oldpos ) + return lines +endfunction + +" Eval buffer lines in the given range +function! SlimvEvalRegion() range + if v:register == '"' || v:register == '+' + let lines = SlimvGetRegion(a:firstline, a:lastline) + else + " Register was passed, so eval register contents instead + let reg = getreg( v:register ) + let ending = "" + if SlimvGetFiletype() != 'r' + let ending = s:CloseForm( reg ) + if ending == 'ERROR' + call SlimvError( 'Too many or invalid closing parens in register "' . v:register ) + return + endif + endif + let lines = [reg . ending] + endif + if lines != [] + if SlimvGetFiletype() == 'scheme' + " Swank-scheme requires us to pass a single s-expression + " so embed buffer lines in a (begin ...) block + let lines = ['(begin'] + lines + [')'] + endif + call SlimvEval( lines ) + endif +endfunction + +" Eval contents of the 's' register, optionally store it in another register +" Also optionally append a test form for quick testing (not stored in 'outreg') +" If the test form contains '%1' then it 'wraps' the selection around the '%1' +function! SlimvEvalSelection( outreg, testform ) + let sel = SlimvGetSelection() + if a:outreg != '"' && a:outreg != '+' + " Register was passed, so store current selection in register + call setreg( a:outreg, s:swank_package_form . sel) + endif + let lines = [sel] + if a:testform != '' + if match( a:testform, '%1' ) >= 0 + " We need to wrap the selection in the testform + if match( sel, "\n" ) < 0 + " The selection is a single line, keep the wrapped form in one line + let sel = substitute( a:testform, '%1', sel, 'g' ) + let lines = [sel] + else + " The selection is multiple lines, wrap it by adding new lines + let lines = [strpart( a:testform, 0, match( a:testform, '%1' ) ), + \ sel, + \ strpart( a:testform, matchend( a:testform, '%1' ) )] + endif + else + " Append optional test form at the tail + let lines = lines + [a:testform] + endif + endif + if exists( 'b:slimv_repl_buffer' ) + " If this is the REPL buffer then go to EOF + call s:EndOfBuffer() + endif + call SlimvEval( lines ) +endfunction + +" Eval Lisp form. +" Form given in the template is passed to Lisp without modification. +function! SlimvEvalForm( template ) + let lines = [a:template] + call SlimvEval( lines ) +endfunction + +" Eval Lisp form, with the given parameter substituted in the template. +" %1 string is substituted with par1 +function! SlimvEvalForm1( template, par1 ) + let p1 = escape( a:par1, '&' ) + let temp1 = substitute( a:template, '%1', p1, 'g' ) + let lines = [temp1] + call SlimvEval( lines ) +endfunction + +" Eval Lisp form, with the given parameters substituted in the template. +" %1 string is substituted with par1 +" %2 string is substituted with par2 +function! SlimvEvalForm2( template, par1, par2 ) + let p1 = escape( a:par1, '&' ) + let p2 = escape( a:par2, '&' ) + let temp1 = substitute( a:template, '%1', p1, 'g' ) + let temp2 = substitute( temp1, '%2', p2, 'g' ) + let lines = [temp2] + call SlimvEval( lines ) +endfunction + + +" ===================================================================== +" Special functions +" ===================================================================== + +" Evaluate and test top level form at the cursor pos +function! SlimvEvalTestDefun( testform ) + let outreg = v:register + let oldpos = winsaveview() + if !SlimvSelectDefun() + return + endif + call SlimvFindPackage() + call winrestview( oldpos ) + call SlimvEvalSelection( outreg, a:testform ) +endfunction + +" Evaluate top level form at the cursor pos +function! SlimvEvalDefun() + call SlimvEvalTestDefun( '' ) +endfunction + +" Evaluate the whole buffer +function! SlimvEvalBuffer() + if exists( 'b:slimv_repl_buffer' ) + call SlimvError( "Cannot evaluate the REPL buffer." ) + return + endif + let lines = getline( 1, '$' ) + if SlimvGetFiletype() == 'scheme' + " Swank-scheme requires us to pass a single s-expression + " so embed buffer lines in a (begin ...) block + let lines = ['(begin'] + lines + [')'] + endif + call SlimvEval( lines ) +endfunction + +" Return frame number if we are in the Backtrace section of the debugger +function! s:DebugFrame() + if s:swank_connected && s:sldb_level >= 0 + " Check if we are in SLDB + let sldb_buf = bufnr( '^' . g:slimv_sldb_name . '$' ) + if sldb_buf != -1 && sldb_buf == bufnr( "%" ) + let bcktrpos = search( '^Backtrace:', 'bcnw' ) + let framepos = line( '.' ) + if matchstr( getline('.'), s:frame_def ) == '' + let framepos = search( s:frame_def, 'bcnw' ) + endif + if framepos > 0 && bcktrpos > 0 && framepos > bcktrpos + let line = getline( framepos ) + let item = matchstr( line, s:frame_def ) + if item != '' + return substitute( item, '\s\|:', '', 'g' ) + endif + endif + endif + endif + return '' +endfunction + +" Evaluate and test current s-expression at the cursor pos +function! SlimvEvalTestExp( testform ) + let outreg = v:register + let oldpos = winsaveview() + if !SlimvSelectForm( 1 ) + return + endif + call SlimvFindPackage() + call winrestview( oldpos ) + call SlimvEvalSelection( outreg, a:testform ) +endfunction + +" Evaluate current s-expression at the cursor pos +function! SlimvEvalExp() + call SlimvEvalTestExp( '' ) +endfunction + +" Evaluate expression entered interactively +function! SlimvInteractiveEval() + let frame = s:DebugFrame() + if frame != '' + " We are in the debugger, eval expression in the frame the cursor stands on + let e = input( 'Eval in frame ' . frame . ': ' ) + if e != '' + let result = SlimvCommandGetResponse( ':eval-string-in-frame', s:py_cmd . 'swank_eval_in_frame("' . e . '", ' . frame . ')', 0 ) + if result != '' + redraw + echo result + endif + endif + else + let e = input( 'Eval: ' ) + if e != '' + call SlimvEval([e]) + endif + endif +endfunction + +" Undefine function +function! SlimvUndefineFunction() + if s:swank_connected + call SlimvCommand( s:py_cmd . 'swank_undefine_function("' . SlimvSelectSymbol() . '")' ) + call SlimvRefreshReplBuffer() + endif +endfunction + +" --------------------------------------------------------------------- + +" Macroexpand-1 the current top level form +function! SlimvMacroexpand() + if SlimvConnectSwank() + if !SlimvSelectForm( 0 ) + return + endif + let s:swank_form = SlimvGetSelection() + if exists( 'b:slimv_repl_buffer' ) + " If this is the REPL buffer then go to EOF + call s:EndOfBuffer() + endif + call SlimvCommandUsePackage( s:py_cmd . 'swank_macroexpand("s:swank_form")' ) + endif +endfunction + +" Macroexpand the current top level form +function! SlimvMacroexpandAll() + if SlimvConnectSwank() + if !SlimvSelectForm( 0 ) + return + endif + let s:swank_form = SlimvGetSelection() + if exists( 'b:slimv_repl_buffer' ) + " If this is the REPL buffer then go to EOF + call s:EndOfBuffer() + endif + call SlimvCommandUsePackage( s:py_cmd . 'swank_macroexpand_all("s:swank_form")' ) + endif +endfunction + +" Toggle debugger break on exceptions +" Only for ritz-swank 0.4.0 and above +function! SlimvBreakOnException() + if SlimvGetFiletype() =~ '.*clojure.*' && s:SinceVersion( '2010-11-13' ) + " swank-clojure is abandoned at protocol version 20100404, so it must be ritz-swank + if SlimvConnectSwank() + let s:break_on_exception = ! s:break_on_exception + call SlimvCommand( s:py_cmd . 'swank_break_on_exception(' . s:break_on_exception . ')' ) + call SlimvRefreshReplBuffer() + echomsg 'Break On Exception ' . (s:break_on_exception ? 'enabled.' : 'disabled.') + endif + else + call SlimvError( "This function is implemented only for ritz-swank." ) + endif +endfunction + +" Set a breakpoint on the beginning of a function +function! SlimvBreak() + if SlimvConnectSwank() + let s = input( 'Set breakpoint: ', SlimvSelectSymbol() ) + if s != '' + call SlimvCommandUsePackage( s:py_cmd . 'swank_set_break("' . s . '")' ) + redraw! + endif + endif +endfunction + +" Switch trace on for the selected function (toggle for swank) +function! SlimvTrace() + if SlimvGetFiletype() == 'scheme' + call SlimvError( "Tracing is not supported by swank-scheme." ) + return + endif + if SlimvConnectSwank() + let s = input( '(Un)trace: ', SlimvSelectSymbol() ) + if s != '' + call SlimvCommandUsePackage( s:py_cmd . 'swank_toggle_trace("' . s . '")' ) + redraw! + endif + endif +endfunction + +" Switch trace off for the selected function (or all functions for swank) +function! SlimvUntrace() + if SlimvGetFiletype() == 'scheme' + call SlimvError( "Tracing is not supported by swank-scheme." ) + return + endif + if SlimvConnectSwank() + let s:refresh_disabled = 1 + call SlimvCommand( s:py_cmd . 'swank_untrace_all()' ) + let s:refresh_disabled = 0 + call SlimvRefreshReplBuffer() + endif +endfunction + +" Disassemble the selected function +function! SlimvDisassemble() + let symbol = SlimvSelectSymbol() + if SlimvConnectSwank() + let s = input( 'Disassemble: ', symbol ) + if s != '' + call SlimvCommandUsePackage( s:py_cmd . 'swank_disassemble("' . s . '")' ) + endif + endif +endfunction + +" Inspect symbol under cursor +function! SlimvInspect() + if !SlimvConnectSwank() + return + endif + let s:inspect_path = [] + let frame = s:DebugFrame() + if frame != '' + " Inspect selected for a frame in the debugger's Backtrace section + let line = getline( '.' ) + if matchstr( line, s:frame_def ) != '' + " This is the base frame line in form ' 1: xxxxx' + let sym = '' + elseif matchstr( line, '^\s\+in "\(.*\)" \(line\|byte\)' ) != '' + " This is the source location line + let sym = '' + elseif matchstr( line, '^\s\+No source line information' ) != '' + " This is the no source location line + let sym = '' + elseif matchstr( line, '^\s\+Locals:' ) != '' + " This is the 'Locals' line + let sym = '' + else + let sym = SlimvSelectSymbolExt() + endif + let s = input( 'Inspect in frame ' . frame . ' (evaluated): ', sym ) + if s != '' + let s:inspect_path = [s] + call SlimvCommand( s:py_cmd . 'swank_inspect_in_frame("' . s . '", ' . frame . ')' ) + call SlimvRefreshReplBuffer() + endif + else + let s = input( 'Inspect: ', SlimvSelectSymbolExt() ) + if s != '' + let s:inspect_path = [s] + call SlimvCommandUsePackage( s:py_cmd . 'swank_inspect("' . s . '")' ) + endif + endif +endfunction + +" Cross reference: who calls +function! SlimvXrefBase( text, cmd ) + if SlimvConnectSwank() + let s = input( a:text, SlimvSelectSymbol() ) + if s != '' + call SlimvCommandUsePackage( s:py_cmd . 'swank_xref("' . s . '", "' . a:cmd . '")' ) + endif + endif +endfunction + +" Cross reference: who calls +function! SlimvXrefCalls() + call SlimvXrefBase( 'Who calls: ', ':calls' ) +endfunction + +" Cross reference: who references +function! SlimvXrefReferences() + call SlimvXrefBase( 'Who references: ', ':references' ) +endfunction + +" Cross reference: who sets +function! SlimvXrefSets() + call SlimvXrefBase( 'Who sets: ', ':sets' ) +endfunction + +" Cross reference: who binds +function! SlimvXrefBinds() + call SlimvXrefBase( 'Who binds: ', ':binds' ) +endfunction + +" Cross reference: who macroexpands +function! SlimvXrefMacroexpands() + call SlimvXrefBase( 'Who macroexpands: ', ':macroexpands' ) +endfunction + +" Cross reference: who specializes +function! SlimvXrefSpecializes() + call SlimvXrefBase( 'Who specializes: ', ':specializes' ) +endfunction + +" Cross reference: list callers +function! SlimvXrefCallers() + call SlimvXrefBase( 'List callers: ', ':callers' ) +endfunction + +" Cross reference: list callees +function! SlimvXrefCallees() + call SlimvXrefBase( 'List callees: ', ':callees' ) +endfunction + +" --------------------------------------------------------------------- + +" Switch or toggle profiling on for the selected function +function! SlimvProfile() + if SlimvConnectSwank() + let s = input( '(Un)profile: ', SlimvSelectSymbol() ) + if s != '' + call SlimvCommandUsePackage( s:py_cmd . 'swank_toggle_profile("' . s . '")' ) + redraw! + endif + endif +endfunction + +" Switch profiling on based on substring +function! SlimvProfileSubstring() + if SlimvConnectSwank() + let s = input( 'Profile by matching substring: ', SlimvSelectSymbol() ) + if s != '' + let p = input( 'Package (RET for all packages): ' ) + call SlimvCommandUsePackage( s:py_cmd . 'swank_profile_substring("' . s . '","' . p . '")' ) + redraw! + endif + endif +endfunction + +" Switch profiling completely off +function! SlimvUnprofileAll() + if SlimvConnectSwank() + call SlimvCommandUsePackage( s:py_cmd . 'swank_unprofile_all()' ) + endif +endfunction + +" Display list of profiled functions +function! SlimvShowProfiled() + if SlimvConnectSwank() + call SlimvCommandUsePackage( s:py_cmd . 'swank_profiled_functions()' ) + endif +endfunction + +" Report profiling results +function! SlimvProfileReport() + if SlimvConnectSwank() + call SlimvCommandUsePackage( s:py_cmd . 'swank_profile_report()' ) + endif +endfunction + +" Reset profiling counters +function! SlimvProfileReset() + if SlimvConnectSwank() + call SlimvCommandUsePackage( s:py_cmd . 'swank_profile_reset()' ) + endif +endfunction + +" --------------------------------------------------------------------- + +" Compile the current top-level form +function! SlimvCompileDefun() + let oldpos = winsaveview() + if !SlimvSelectDefun() + call winrestview( oldpos ) + return + endif + if SlimvConnectSwank() + let s:swank_form = SlimvGetSelection() + call SlimvCommandUsePackage( s:py_cmd . 'swank_compile_string("s:swank_form")' ) + endif + call winrestview( oldpos ) +endfunction + +" Compile and load whole file +function! SlimvCompileLoadFile() + if exists( 'b:slimv_repl_buffer' ) + call SlimvError( "Cannot compile the REPL buffer." ) + return + endif + let filename = fnamemodify( bufname(''), ':p' ) + let filename = substitute( filename, '\\', '/', 'g' ) + if &modified + let answer = SlimvErrorAsk( '', "Save file before compiling [Y/n]?" ) + if answer[0] != 'n' && answer[0] != 'N' + write + endif + endif + if SlimvConnectSwank() + let s:compiled_file = '' + call SlimvCommandUsePackage( s:py_cmd . 'swank_compile_file("' . filename . '")' ) + let starttime = localtime() + while s:compiled_file == '' && localtime()-starttime < g:slimv_timeout + call SlimvSwankResponse() + endwhile + if s:compiled_file != '' + let s:compiled_file = substitute( s:compiled_file, '\\', '/', 'g' ) + call SlimvCommandUsePackage( s:py_cmd . 'swank_load_file("' . s:compiled_file . '")' ) + let s:compiled_file = '' + endif + endif +endfunction + +" Compile whole file +function! SlimvCompileFile() + if exists( 'b:slimv_repl_buffer' ) + call SlimvError( "Cannot compile the REPL buffer." ) + return + endif + let filename = fnamemodify( bufname(''), ':p' ) + let filename = substitute( filename, '\\', '/', 'g' ) + if &modified + let answer = SlimvErrorAsk( '', "Save file before compiling [Y/n]?" ) + if answer[0] != 'n' && answer[0] != 'N' + write + endif + endif + if SlimvConnectSwank() + call SlimvCommandUsePackage( s:py_cmd . 'swank_compile_file("' . filename . '")' ) + endif +endfunction + +" Compile buffer lines in the given range +function! SlimvCompileRegion() range + if v:register == '"' || v:register == '+' + let lines = SlimvGetRegion(a:firstline, a:lastline) + else + " Register was passed, so compile register contents instead + let reg = getreg( v:register ) + let ending = s:CloseForm( reg ) + if ending == 'ERROR' + call SlimvError( 'Too many or invalid closing parens in register "' . v:register ) + return + endif + let lines = [reg . ending] + endif + if lines == [] + return + endif + let region = join( lines, "\n" ) + if SlimvConnectSwank() + let s:swank_form = region + call SlimvCommandUsePackage( s:py_cmd . 'swank_compile_string("s:swank_form")' ) + endif +endfunction + +" --------------------------------------------------------------------- + +" Describe the selected symbol +function! SlimvDescribeSymbol() + if SlimvConnectSwank() + let symbol = SlimvSelectSymbol() + if symbol == '' + call SlimvError( "No symbol under cursor." ) + return + endif + call SlimvCommandUsePackage( s:py_cmd . 'swank_describe_symbol("' . symbol . '")' ) + endif +endfunction + +" Display symbol description in balloonexpr +function! SlimvDescribe(arg) + let arg=a:arg + if a:arg == '' + let arg = expand('') + endif + " We don't want to try connecting here ... the error message would just + " confuse the balloon logic + if !s:swank_connected || s:read_string_mode + return '' + endif + call SlimvFindPackage() + let arglist = SlimvCommandGetResponse( ':operator-arglist', s:py_cmd . 'swank_op_arglist("' . arg . '")', 0 ) + if arglist == '' + " Not able to fetch arglist, assuming function is not defined + " Skip calling describe, otherwise SWANK goes into the debugger + return '' + endif + let msg = SlimvCommandGetResponse( ':describe-function', s:py_cmd . 'swank_describe_function("' . arg . '")', 0 ) + if msg == '' + " No describe info, display arglist + if match( arglist, arg ) != 1 + " Function name is not received from REPL + return "(" . arg . ' ' . arglist[1:] + else + return arglist + endif + else + return substitute(msg,'^\n*','','') + endif +endfunction + +" Apropos of the selected symbol +function! SlimvApropos() + call SlimvEvalForm1( g:slimv_template_apropos, SlimvSelectSymbol() ) +endfunction + +" Generate tags file using ctags +function! SlimvGenerateTags() + if exists( 'g:slimv_ctags' ) && g:slimv_ctags != '' + execute 'silent !' . g:slimv_ctags + else + call SlimvError( "Copy ctags to the Vim path or define g:slimv_ctags." ) + endif +endfunction + +" --------------------------------------------------------------------- + +" Find word in the CLHS symbol database, with exact or partial match. +" Return either the first symbol found with the associated URL, +" or the list of all symbols found without the associated URL. +function! SlimvFindSymbol( word, exact, all, db, root, init ) + if a:word == '' + return [] + endif + if !a:all && a:init != [] + " Found something already at a previous db lookup, no need to search this db + return a:init + endif + let lst = a:init + let i = 0 + let w = tolower( a:word ) + if a:exact + while i < len( a:db ) + " Try to find an exact match + if a:db[i][0] == w + " No reason to check a:all here + return [a:db[i][0], a:root . a:db[i][1]] + endif + let i = i + 1 + endwhile + else + while i < len( a:db ) + " Try to find the symbol starting with the given word + let w2 = escape( w, '~' ) + if match( a:db[i][0], w2 ) == 0 + if a:all + call add( lst, a:db[i][0] ) + else + return [a:db[i][0], a:root . a:db[i][1]] + endif + endif + let i = i + 1 + endwhile + endif + + " Return whatever found so far + return lst +endfunction + +" Lookup word in Common Lisp Hyperspec +function! SlimvLookup( word ) + " First try an exact match + let w = a:word + let symbol = [] + while symbol == [] + let symbol = SlimvHyperspecLookup( w, 1, 0 ) + if symbol == [] + " Symbol not found, try a match on beginning of symbol name + let symbol = SlimvHyperspecLookup( w, 0, 0 ) + if symbol == [] + " We are out of luck, can't find anything + let msg = 'Symbol ' . w . ' not found. Hyperspec lookup word: ' + let val = '' + else + let msg = 'Hyperspec lookup word: ' + let val = symbol[0] + endif + " Ask user if this is that he/she meant + let w = input( msg, val ) + if w == '' + " OK, user does not want to continue + return + endif + let symbol = [] + endif + endwhile + if symbol != [] && len(symbol) > 1 + " Symbol found, open HS page in browser + if match( symbol[1], ':' ) < 0 && exists( 'g:slimv_hs_root' ) + let page = g:slimv_hs_root . symbol[1] + else + " URL is already a fully qualified address + let page = symbol[1] + endif + if exists( "g:slimv_browser_cmd" ) + " We have an given command to start the browser + if !exists( "g:slimv_browser_cmd_suffix" ) + " Fork the browser by default + let g:slimv_browser_cmd_suffix = '&' + endif + silent execute '! ' . g:slimv_browser_cmd . ' ' . page . ' ' . g:slimv_browser_cmd_suffix + else + if g:slimv_windows + " Run the program associated with the .html extension + silent execute '! start ' . page + else + " On Linux it's not easy to determine the default browser + if executable( 'xdg-open' ) + silent execute '! xdg-open ' . page . ' &' + else + " xdg-open not installed, ask help from Python webbrowser package + let pycmd = "import webbrowser; webbrowser.open('" . page . "')" + silent execute '! python -c "' . pycmd . '"' + endif + endif + endif + " This is needed especially when using text browsers + redraw! + endif +endfunction + +" Lookup current symbol in the Common Lisp Hyperspec +function! SlimvHyperspec() + call SlimvLookup( SlimvSelectSymbol() ) +endfunction + +" Complete symbol name starting with 'base' +function! SlimvComplete( base ) + " Find all symbols starting with "a:base" + if a:base == '' + return [] + endif + if s:swank_connected && !s:read_string_mode + " Save current buffer and window in case a swank command causes a buffer change + let buf = bufnr( "%" ) + if winnr('$') < 2 + let win = 0 + else + let win = winnr() + endif + + call SlimvFindPackage() + if g:slimv_simple_compl + let msg = SlimvCommandGetResponse( ':simple-completions', s:py_cmd . 'swank_completions("' . a:base . '")', 0 ) + else + let msg = SlimvCommandGetResponse( ':fuzzy-completions', s:py_cmd . 'swank_fuzzy_completions("' . a:base . '")', 0 ) + endif + + " Restore window and buffer, because it is not allowed to change buffer here + if win > 0 && winnr() != win + execute win . "wincmd w" + let msg = '' + endif + if bufnr( "%" ) != buf + execute "buf " . buf + let msg = '' + endif + + if msg != '' + " We have a completion list from SWANK + let res = split( msg, '\n' ) + return res + endif + endif + + " No completion yet, try to fetch it from the Hyperspec database + let res = [] + let symbol = SlimvHyperspecLookup( a:base, 0, 1 ) + if symbol == [] + return [] + endif + call sort( symbol ) + for m in symbol + if m =~ '^' . a:base + call add( res, m ) + endif + endfor + return res +endfunction + +" Complete function that uses the Hyperspec database +function! SlimvOmniComplete( findstart, base ) + if a:findstart + " Locate the start of the symbol name + call s:SetKeyword() + let upto = strpart( getline( '.' ), 0, col( '.' ) - 1) + return match(upto, '\k\+$') + else + return SlimvComplete( a:base ) + endif +endfunction + +" Define complete function only if none is defined yet +if &omnifunc == '' + set omnifunc=SlimvOmniComplete +endif + +" Complete function for user-defined commands +function! SlimvCommandComplete( arglead, cmdline, cursorpos ) + " Locate the start of the symbol name + call s:SetKeyword() + let upto = strpart( a:cmdline, 0, a:cursorpos ) + let base = matchstr(upto, '\k\+$') + let ext = matchstr(upto, '\S*\k\+$') + let compl = SlimvComplete( base ) + if len(compl) > 0 && base != ext + " Command completion replaces whole word between spaces, so we + " need to add any prefix present in front of the keyword, like '(' + let prefix = strpart( ext, 0, len(ext) - len(base) ) + let i = 0 + while i < len(compl) + let compl[i] = prefix . compl[i] + let i = i + 1 + endwhile + endif + return compl +endfunction + +" Create a tags file containing the definitions +" of the given symbol, then perform a tag lookup +function! SlimvFindDefinitionsForEmacs( symbol ) + if g:slimv_tags_file == '' + let msg = '' + else + let msg = SlimvCommandGetResponse( ':find-definitions-for-emacs', s:py_cmd . 'swank_find_definitions_for_emacs("' . a:symbol . '")', 0 ) + endif + try + if msg != '' + exec ":tjump " . msg + else + exec ":tjump " . a:symbol + endif + catch /^Vim\%((\a\+)\)\=:E426/ + call SlimvError( "\r" . v:exception ) + endtry +endfunction + +" Lookup definition(s) of the symbol under cursor +function! SlimvFindDefinitions() + if SlimvConnectSwank() + let symbol = SlimvSelectSymbol() + if symbol == '' + call SlimvError( "No symbol under cursor." ) + return + endif + call SlimvFindPackage() + call SlimvFindDefinitionsForEmacs( symbol ) + endif +endfunction + +" Lookup definition(s) of symbol entered in prompt +function! SlimvFindDefinitionsPrompt() + if SlimvConnectSwank() + let symbol = input( 'Find Definitions For: ', SlimvSelectSymbol() ) + call SlimvFindDefinitionsForEmacs( symbol ) + endif +endfunction + +" Set current package +function! SlimvSetPackage() + if SlimvConnectSwank() + call SlimvFindPackage() + let pkg = input( 'Package: ', s:swank_package ) + if pkg != '' + let s:refresh_disabled = 1 + call SlimvCommand( s:py_cmd . 'swank_set_package("' . pkg . '")' ) + let s:refresh_disabled = 0 + call SlimvRefreshReplBuffer() + endif + endif +endfunction + +" Close lisp process running the swank server +" and quit REPL buffer +function! SlimvQuitRepl() + if s:swank_connected + call SlimvCommand( s:py_cmd . 'swank_quit_lisp()' ) + let s:swank_connected = 0 + let buf = bufnr( '^' . g:slimv_repl_name . '$' ) + if buf != -1 + if g:slimv_repl_split + " REPL buffer exists, check if it is open in a window + let win = bufwinnr( buf ) + if win != -1 + " Switch to the REPL window and close it + if winnr() != win + execute win . "wincmd w" + endif + execute "wincmd c" + endif + endif + execute "bd " . buf + endif + endif +endfunction + +" ===================================================================== +" Slimv keybindings +" ===================================================================== + +" timeouts in 1000 msec by default, if this is too short, +" then increase 'timeoutlen' + +" Map keyboard keyset dependant shortcut to command and also add it to menu +function! s:MenuMap( name, shortcut1, shortcut2, command ) + if g:slimv_keybindings == 1 + " Short (one-key) keybinding set + let shortcut = a:shortcut1 + elseif g:slimv_keybindings == 2 + " Easy to remember (two-key) keybinding set + let shortcut = a:shortcut2 + else + " No bindings + let shortcut = '' + endif + + if shortcut != '' + execute "noremap " . shortcut . " " . a:command + if a:name != '' && g:slimv_menu == 1 + silent execute "amenu " . a:name . "" . shortcut . " " . a:command + endif + elseif a:name != '' && g:slimv_menu == 1 + silent execute "amenu " . a:name . " " . a:command + endif +endfunction + +" Initialize buffer by adding buffer specific mappings +function! SlimvInitBuffer() + " Map space to display function argument list in status line + if SlimvGetFiletype() == 'r' + inoremap ( (=SlimvArglist() + else + if !exists("g:slimv_unmap_space") || g:slimv_unmap_space == 0 + inoremap =SlimvArglist() + endif + if !exists("g:slimv_unmap_cr") || g:slimv_unmap_cr == 0 + inoremap =pumvisible() ? "\C-Y>" : SlimvHandleEnter()=SlimvArglistOnEnter() + endif + endif + "noremap :call SlimvInterrupt() + augroup SlimvInsertLeave + au! + au InsertEnter * :let s:save_showmode=&showmode + au InsertLeave * :let &showmode=s:save_showmode + augroup END + inoremap 0 :call SlimvCloseForm() + if !exists("g:slimv_unmap_tab") || g:slimv_unmap_tab == 0 + inoremap =SlimvHandleTab() + endif + inoremap =pumvisible() ? "\C-P>" : "\S-Tab>" + if g:slimv_tags_file != '' + nnoremap :call SlimvFindDefinitions() + endif + + " Setup balloonexp to display symbol description + if g:slimv_balloon && has( 'balloon_eval' ) + "setlocal balloondelay=100 + setlocal ballooneval + setlocal balloonexpr=SlimvDescribe(v:beval_text) + endif + " This is needed for safe switching of modified buffers + set hidden + call s:MakeWindowId() +endfunction + +" Edit commands +call s:MenuMap( 'Slim&v.Edi&t.Close-&Form', g:slimv_leader.')', g:slimv_leader.'tc', ':call SlimvCloseForm()' ) +call s:MenuMap( 'Slim&v.Edi&t.&Complete-SymbolTab', '', '', '' ) +call s:MenuMap( 'Slim&v.Edi&t.Find-&Definitions\.\.\.', g:slimv_leader.'j', g:slimv_leader.'fd', ':call SlimvFindDefinitionsPrompt()' ) + +if exists( 'g:paredit_loaded' ) +call s:MenuMap( 'Slim&v.Edi&t.&Paredit-Toggle', g:slimv_leader.'(', g:slimv_leader.'(t', ':call PareditToggle()' ) +call s:MenuMap( 'Slim&v.Edi&t.-PareditSep-', '', '', ':' ) + +if g:paredit_shortmaps +call s:MenuMap( 'Slim&v.Edi&t.Paredit-&Wrap' .'W', '', '', ':call PareditWrap("(",")")' ) +call s:MenuMap( 'Slim&v.Edi&t.Paredit-Spli&ce' .'S', '', '', ':call PareditSplice()' ) +call s:MenuMap( 'Slim&v.Edi&t.Paredit-&Split' .'O', '', '', ':call PareditSplit()' ) +call s:MenuMap( 'Slim&v.Edi&t.Paredit-&Join' .'J', '', '', ':call PareditJoin()' ) +call s:MenuMap( 'Slim&v.Edi&t.Paredit-Ra&ise' .g:slimv_leader.'I', '', '', ':call PareditRaise()' ) +call s:MenuMap( 'Slim&v.Edi&t.Paredit-Move&Left' .'<', '', '', ':call PareditMoveLeft()' ) +call s:MenuMap( 'Slim&v.Edi&t.Paredit-Move&Right' .'>', '', '', ':call PareditMoveRight()' ) +else +call s:MenuMap( 'Slim&v.Edi&t.Paredit-&Wrap' .g:slimv_leader.'W', '', '', ':call PareditWrap("(",")")' ) +call s:MenuMap( 'Slim&v.Edi&t.Paredit-Spli&ce' .g:slimv_leader.'S', '', '', ':call PareditSplice()' ) +call s:MenuMap( 'Slim&v.Edi&t.Paredit-&Split' .g:slimv_leader.'O', '', '', ':call PareditSplit()' ) +call s:MenuMap( 'Slim&v.Edi&t.Paredit-&Join' .g:slimv_leader.'J', '', '', ':call PareditJoin()' ) +call s:MenuMap( 'Slim&v.Edi&t.Paredit-Ra&ise' .g:slimv_leader.'I', '', '', ':call PareditRaise()' ) +call s:MenuMap( 'Slim&v.Edi&t.Paredit-Move&Left' .g:slimv_leader.'<', '', '', ':call PareditMoveLeft()' ) +call s:MenuMap( 'Slim&v.Edi&t.Paredit-Move&Right' .g:slimv_leader.'>', '', '', ':call PareditMoveRight()' ) +endif "g:paredit_shortmaps +endif "g:paredit_loaded + +" Evaluation commands +call s:MenuMap( 'Slim&v.&Evaluation.Eval-&Defun', g:slimv_leader.'d', g:slimv_leader.'ed', ':call SlimvEvalDefun()' ) +call s:MenuMap( 'Slim&v.&Evaluation.Eval-Current-&Exp', g:slimv_leader.'e', g:slimv_leader.'ee', ':call SlimvEvalExp()' ) +call s:MenuMap( 'Slim&v.&Evaluation.Eval-&Region', g:slimv_leader.'r', g:slimv_leader.'er', ':call SlimvEvalRegion()' ) +call s:MenuMap( 'Slim&v.&Evaluation.Eval-&Buffer', g:slimv_leader.'b', g:slimv_leader.'eb', ':call SlimvEvalBuffer()' ) +call s:MenuMap( 'Slim&v.&Evaluation.Interacti&ve-Eval\.\.\.', g:slimv_leader.'v', g:slimv_leader.'ei', ':call SlimvInteractiveEval()' ) +call s:MenuMap( 'Slim&v.&Evaluation.&Undefine-Function', g:slimv_leader.'u', g:slimv_leader.'eu', ':call SlimvUndefineFunction()' ) + +" Debug commands +call s:MenuMap( 'Slim&v.De&bugging.Macroexpand-&1', g:slimv_leader.'1', g:slimv_leader.'m1', ':call SlimvMacroexpand()' ) +call s:MenuMap( 'Slim&v.De&bugging.&Macroexpand-All', g:slimv_leader.'m', g:slimv_leader.'ma', ':call SlimvMacroexpandAll()' ) +call s:MenuMap( 'Slim&v.De&bugging.Toggle-&Trace\.\.\.', g:slimv_leader.'t', g:slimv_leader.'dt', ':call SlimvTrace()' ) +call s:MenuMap( 'Slim&v.De&bugging.U&ntrace-All', g:slimv_leader.'T', g:slimv_leader.'du', ':call SlimvUntrace()' ) +call s:MenuMap( 'Slim&v.De&bugging.Set-&Breakpoint', g:slimv_leader.'B', g:slimv_leader.'db', ':call SlimvBreak()' ) +call s:MenuMap( 'Slim&v.De&bugging.Break-on-&Exception', g:slimv_leader.'E', g:slimv_leader.'de', ':call SlimvBreakOnException()' ) +call s:MenuMap( 'Slim&v.De&bugging.Disassemb&le\.\.\.', g:slimv_leader.'l', g:slimv_leader.'dd', ':call SlimvDisassemble()' ) +call s:MenuMap( 'Slim&v.De&bugging.&Inspect\.\.\.', g:slimv_leader.'i', g:slimv_leader.'di', ':call SlimvInspect()' ) +call s:MenuMap( 'Slim&v.De&bugging.-SldbSep-', '', '', ':' ) +call s:MenuMap( 'Slim&v.De&bugging.&Abort', g:slimv_leader.'a', g:slimv_leader.'da', ':call SlimvDebugAbort()' ) +call s:MenuMap( 'Slim&v.De&bugging.&Quit-to-Toplevel', g:slimv_leader.'q', g:slimv_leader.'dq', ':call SlimvDebugQuit()' ) +call s:MenuMap( 'Slim&v.De&bugging.&Continue', g:slimv_leader.'n', g:slimv_leader.'dc', ':call SlimvDebugContinue()' ) +call s:MenuMap( 'Slim&v.De&bugging.&Restart-Frame', g:slimv_leader.'N', g:slimv_leader.'dr', ':call SlimvDebugRestartFrame()' ) +call s:MenuMap( 'Slim&v.De&bugging.-ThreadSep-', '', '', ':' ) +call s:MenuMap( 'Slim&v.De&bugging.List-T&hreads', g:slimv_leader.'H', g:slimv_leader.'dl', ':call SlimvListThreads()' ) +call s:MenuMap( 'Slim&v.De&bugging.&Kill-Thread\.\.\.', g:slimv_leader.'K', g:slimv_leader.'dk', ':call SlimvKillThread()' ) +call s:MenuMap( 'Slim&v.De&bugging.&Debug-Thread\.\.\.', g:slimv_leader.'G', g:slimv_leader.'dT', ':call SlimvDebugThread()' ) + +" Compile commands +call s:MenuMap( 'Slim&v.&Compilation.Compile-&Defun', g:slimv_leader.'D', g:slimv_leader.'cd', ':call SlimvCompileDefun()' ) +call s:MenuMap( 'Slim&v.&Compilation.Compile-&Load-File', g:slimv_leader.'L', g:slimv_leader.'cl', ':call SlimvCompileLoadFile()' ) +call s:MenuMap( 'Slim&v.&Compilation.Compile-&File', g:slimv_leader.'F', g:slimv_leader.'cf', ':call SlimvCompileFile()' ) +call s:MenuMap( 'Slim&v.&Compilation.Compile-&Region', g:slimv_leader.'R', g:slimv_leader.'cr', ':call SlimvCompileRegion()' ) + +" Xref commands +call s:MenuMap( 'Slim&v.&Xref.Who-&Calls', g:slimv_leader.'xc', g:slimv_leader.'xc', ':call SlimvXrefCalls()' ) +call s:MenuMap( 'Slim&v.&Xref.Who-&References', g:slimv_leader.'xr', g:slimv_leader.'xr', ':call SlimvXrefReferences()' ) +call s:MenuMap( 'Slim&v.&Xref.Who-&Sets', g:slimv_leader.'xs', g:slimv_leader.'xs', ':call SlimvXrefSets()' ) +call s:MenuMap( 'Slim&v.&Xref.Who-&Binds', g:slimv_leader.'xb', g:slimv_leader.'xb', ':call SlimvXrefBinds()' ) +call s:MenuMap( 'Slim&v.&Xref.Who-&Macroexpands', g:slimv_leader.'xm', g:slimv_leader.'xm', ':call SlimvXrefMacroexpands()' ) +call s:MenuMap( 'Slim&v.&Xref.Who-S&pecializes', g:slimv_leader.'xp', g:slimv_leader.'xp', ':call SlimvXrefSpecializes()' ) +call s:MenuMap( 'Slim&v.&Xref.&List-Callers', g:slimv_leader.'xl', g:slimv_leader.'xl', ':call SlimvXrefCallers()' ) +call s:MenuMap( 'Slim&v.&Xref.List-Call&ees', g:slimv_leader.'xe', g:slimv_leader.'xe', ':call SlimvXrefCallees()' ) + +" Profile commands +call s:MenuMap( 'Slim&v.&Profiling.Toggle-&Profile\.\.\.', g:slimv_leader.'p', g:slimv_leader.'pp', ':call SlimvProfile()' ) +call s:MenuMap( 'Slim&v.&Profiling.Profile-&By-Substring\.\.\.',g:slimv_leader.'P', g:slimv_leader.'pb', ':call SlimvProfileSubstring()' ) +call s:MenuMap( 'Slim&v.&Profiling.Unprofile-&All', g:slimv_leader.'U', g:slimv_leader.'pa', ':call SlimvUnprofileAll()' ) +call s:MenuMap( 'Slim&v.&Profiling.&Show-Profiled', g:slimv_leader.'?', g:slimv_leader.'ps', ':call SlimvShowProfiled()' ) +call s:MenuMap( 'Slim&v.&Profiling.-ProfilingSep-', '', '', ':' ) +call s:MenuMap( 'Slim&v.&Profiling.Profile-Rep&ort', g:slimv_leader.'o', g:slimv_leader.'pr', ':call SlimvProfileReport()' ) +call s:MenuMap( 'Slim&v.&Profiling.Profile-&Reset', g:slimv_leader.'X', g:slimv_leader.'px', ':call SlimvProfileReset()' ) + +" Documentation commands +call s:MenuMap( 'Slim&v.&Documentation.Describe-&Symbol', g:slimv_leader.'s', g:slimv_leader.'ds', ':call SlimvDescribeSymbol()' ) +call s:MenuMap( 'Slim&v.&Documentation.&Apropos', g:slimv_leader.'A', g:slimv_leader.'dp', ':call SlimvApropos()' ) +call s:MenuMap( 'Slim&v.&Documentation.&Hyperspec', g:slimv_leader.'h', g:slimv_leader.'dh', ':call SlimvHyperspec()' ) +call s:MenuMap( 'Slim&v.&Documentation.Generate-&Tags', g:slimv_leader.']', g:slimv_leader.'dg', ':call SlimvGenerateTags()' ) + +" REPL commands +call s:MenuMap( 'Slim&v.&Repl.&Connect-Server', g:slimv_leader.'c', g:slimv_leader.'rc', ':call SlimvConnectServer()' ) +call s:MenuMap( '', g:slimv_leader.'g', g:slimv_leader.'rp', ':call SlimvSetPackage()' ) +call s:MenuMap( 'Slim&v.&Repl.Interrup&t-Lisp-Process', g:slimv_leader.'y', g:slimv_leader.'ri', ':call SlimvInterrupt()' ) +call s:MenuMap( 'Slim&v.&Repl.Clear-&REPL', g:slimv_leader.'-', g:slimv_leader.'-', ':call SlimvClearReplBuffer()' ) +call s:MenuMap( 'Slim&v.&Repl.&Quit-REPL', g:slimv_leader.'Q', g:slimv_leader.'rq', ':call SlimvQuitRepl()' ) + + +" ===================================================================== +" Slimv menu +" ===================================================================== + +if g:slimv_menu == 1 + " Works only if 'wildcharm' is + if &wildcharm == 0 + set wildcharm= + endif + if &wildcharm != 0 + execute ':map ' . g:slimv_leader.', :emenu Slimv.' . nr2char( &wildcharm ) + endif +endif + +" Add REPL menu. This menu exist only for the REPL buffer. +function! SlimvAddReplMenu() + if &wildcharm != 0 + execute ':map ' . g:slimv_leader.'\ :emenu REPL.' . nr2char( &wildcharm ) + endif + + amenu &REPL.Send-&Input :call SlimvSendCommand(0) + amenu &REPL.Cl&ose-Send-Input :call SlimvSendCommand(1) + amenu &REPL.Set-Packa&ge :call SlimvSetPackage() + amenu &REPL.Interrup&t-Lisp-Process :call SlimvInterrupt() + amenu &REPL.-REPLSep- : + amenu &REPL.&Previous-Input :call SlimvPreviousCommand() + amenu &REPL.&Next-Input :call SlimvNextCommand() + amenu &REPL.Clear-&REPL :call SlimvClearReplBuffer() +endfunction + +" ===================================================================== +" Slimv commands +" ===================================================================== + +command! -complete=customlist,SlimvCommandComplete -nargs=* Lisp call SlimvEval([]) +command! -complete=customlist,SlimvCommandComplete -nargs=* Eval call SlimvEval([]) + +" Switch on syntax highlighting +if !exists("g:syntax_on") + syntax on +endif + diff --git a/vim/bundle/slimv/ftplugin/swank.py b/vim/bundle/slimv/ftplugin/swank.py new file mode 100644 index 0000000..359cd68 --- /dev/null +++ b/vim/bundle/slimv/ftplugin/swank.py @@ -0,0 +1,1373 @@ +#!/usr/bin/env python) + +############################################################################### +# +# SWANK client for Slimv +# swank.py: SWANK client code for slimv.vim plugin +# Version: 0.9.13 +# Last Change: 16 Jan 2017 +# Maintainer: Tamas Kovacs +# License: This file is placed in the public domain. +# No warranty, express or implied. +# *** *** Use At-Your-Own-Risk! *** *** +# +############################################################################### + +from __future__ import print_function + +import socket +import time +import select +import string +import sys + +input_port = 4005 +output_port = 4006 +lenbytes = 6 # Message length is encoded in this number of bytes +maxmessages = 50 # Maximum number of messages to receive in one listening session +recv_timeout = 0.001 # socket recv timeout in seconds +listen_retries = 10 # number of retries if no response in swank_listen() +sock = None # Swank socket object +id = 0 # Message id +debug = False +log = False # Set this to True in order to enable logging +logfile = 'swank.log' # Logfile name in case logging is on +pid = '0' # Process id +current_thread = '0' +use_unicode = True # Use unicode message length counting +debug_active = False # Swank debugger is active +debug_activated = False # Swank debugger was activated +read_string = None # Thread and tag in Swank read string mode +empty_last_line = True # Swank output ended with a new line +prompt = 'SLIMV' # Command prompt +package = 'COMMON-LISP-USER' # Current package +actions = dict() # Swank actions (like ':write-string'), by message id +indent_info = dict() # Data of :indentation-update +frame_locals = dict() # Map frame variable names to their index +inspect_lines = 0 # Number of lines in the Inspector (excluding help text) +inspect_newline = True # Start a new line in the Inspector (for multi-part objects) +inspect_package = '' # Package used for the current Inspector +swank_version = '' # Swank version string in format YYYY-MM-DD +swank_param = '' # Additional parameter for the swank listener + + +############################################################################### +# Basic utility functions +############################################################################### + +def logprint(text): + if log: + f = open(logfile, "a") + f.write(text + '\n') + f.close() + +def logtime(text): + logprint(text + ' ' + str(time.clock())) + +############################################################################### +# Simple Lisp s-expression parser +############################################################################### + +# Possible error codes +PARSERR_NOSTARTBRACE = -1 # s-expression does not start with a '(' +PARSERR_NOCLOSEBRACE = -2 # s-expression does not end with a '(' +PARSERR_NOCLOSESTRING = -3 # string is not closed with double quote +PARSERR_MISSINGLITERAL = -4 # literal is missing after the escape character +PARSERR_EMPTY = -5 # s-expression is empty + + +def parse_comment( sexpr ): + """Parses a ';' Lisp comment till the end of line, returns comment length + """ + pos = sexpr.find( '\n' ) + if pos >= 0: + return pos + 1 + return len( sexpr ) + +def parse_keyword( sexpr ): + """Parses a Lisp keyword, returns keyword length + """ + for pos in range( len( sexpr ) ): + if sexpr[pos] in string.whitespace + ')]': + return pos + return pos + +def parse_sub_sexpr( sexpr, opening, closing ): + """Parses a Lisp sub -expression, returns parsed string length + and a Python list built from the s-expression, + expression can be a Clojure style list surrounded by braces + """ + result = [] + l = len( sexpr ) + for pos in range( l ): + # Find first opening '(' or '[' + if sexpr[pos] == opening: + break + if not sexpr[pos] in string.whitespace: + # S-expression does not start with '(' or '[' + return [PARSERR_NOSTARTBRACE, result] + else: + # Empty s-expression + return [PARSERR_EMPTY, result] + + pos = pos + 1 + quote_cnt = 0 + while pos < l: + literal = 0 + if sexpr[pos] == '\\': + literal = 1 + pos = pos + 1 + if pos == l: + return [PARSERR_MISSINGLITERAL, result] + if not literal and sexpr[pos] == '"': + # We toggle a string + quote_cnt = 1 - quote_cnt + if quote_cnt == 1: + quote_pos = pos + else: + result = result + [sexpr[quote_pos:pos+1]] + elif quote_cnt == 0: + # We are not in a string + if not literal and sexpr[pos] == '(': + # Parse sub expression + [slen, subresult] = parse_sub_sexpr( sexpr[pos:], '(', ')' ) + if slen < 0: + # Sub expression parsing error + return [slen, result] + result = result + [subresult] + pos = pos + slen - 1 + elif not literal and sexpr[pos] == '[': + # Parse sub expression + [slen, subresult] = parse_sub_sexpr( sexpr[pos:], '[', ']' ) + if slen < 0: + # Sub expression parsing error + return [slen, result] + result = result + [subresult] + pos = pos + slen - 1 + elif not literal and sexpr[pos] == closing: + # End of this sub expression + return [pos + 1, result] + elif not literal and sexpr[pos] != closing and sexpr[pos] in ')]': + # Wrong closing brace/bracket + return [PARSERR_NOCLOSEBRACE, result] + elif not literal and sexpr[pos] == ';': + # Skip coment + pos = pos + parse_comment( sexpr[pos:] ) - 1 + elif not literal and sexpr[pos] in "#'`@~,^": + # Skip prefix characters + while pos+1 < l and sexpr[pos+1] not in string.whitespace + '([': + pos = pos + 1 + elif not sexpr[pos] in string.whitespace + '\\': + # Parse keyword but ignore dot in dotted notation (a . b) + klen = parse_keyword( sexpr[pos:] ) + if klen > 1 or sexpr[pos] != '.': + result = result + [sexpr[pos:pos+klen]] + pos = pos + klen - 1 + pos = pos + 1 + + if quote_cnt != 0: + # Last string is not closed + return [PARSERR_NOCLOSESTRING, result] + # Closing ')' or ']' not found + return [PARSERR_NOCLOSEBRACE, result] + +def parse_sexpr( sexpr ): + """Parses a Lisp s-expression, returns parsed string length + and a Python list built from the s-expression + """ + return parse_sub_sexpr( sexpr, '(', ')' ) + + +############################################################################### +# Swank server interface +############################################################################### + +class swank_action: + def __init__ (self, id, name, data): + self.id = id + self.name = name + self.data = data + self.result = '' + self.pending = True + +def get_prompt(): + global prompt + if prompt.rstrip()[-1] == '>': + return prompt + ' ' + else: + return prompt + '> ' + +def unquote(s): + if len(s) < 2: + return s + if s[0] == '"' and s[-1] == '"': + slist = [] + esc = False + for c in s[1:-1]: + if not esc and c == '\\': + esc = True + elif esc and c == 'n': + esc = False + slist.append('\n') + else: + esc = False + slist.append(c) + return "".join(slist) + else: + return s + +def requote(s): + t = s.replace('\\', '\\\\') + t = t.replace('"', '\\"') + return '"' + t + '"' + +def new_line(new_text): + global empty_last_line + + if new_text != '': + if new_text[-1] != '\n': + return '\n' + elif not empty_last_line: + return '\n' + return '' + +def make_keys(lst): + keys = {} + for i in range(len(lst)): + if i < len(lst)-1 and lst[i][0] == ':': + keys[lst[i]] = unquote( lst[i+1] ) + return keys + +def parse_plist(lst, keyword): + for i in range(0, len(lst), 2): + if keyword == lst[i]: + return unquote(lst[i+1]) + return '' + +def parse_filepos(fname, loc): + lnum = 1 + cnum = 1 + pos = loc + try: + f = open(fname, "r") + except: + return [0, 0] + for line in f: + if pos < len(line): + cnum = pos + break + pos = pos - len(line) + lnum = lnum + 1 + f.close() + return [lnum, cnum] + +def format_filename(fname): + fname = vim.eval('fnamemodify(' + fname + ', ":~:.")') + if fname.find(' ') >= 0: + fname = '"' + fname + '"' + return fname + +def parse_location(lst): + fname = '' + line = '' + pos = '' + if lst[0] == ':location': + if type(lst[1]) == str: + return unquote(lst[1]) + for l in lst[1:]: + if l[0] == ':file': + fname = l[1] + if l[0] == ':line': + line = l[1] + if l[0] == ':position': + pos = l[1] + if fname == '': + fname = 'Unknown file' + if line != '': + return 'in ' + format_filename(fname) + ' line ' + line + if pos != '': + [lnum, cnum] = parse_filepos(unquote(fname), int(pos)) + if lnum > 0: + return 'in ' + format_filename(fname) + ' line ' + str(lnum) + else: + return 'in ' + format_filename(fname) + ' byte ' + pos + return 'no source line information' + +def unicode_len(text): + if use_unicode: + if sys.version_info[0] > 2: + return len(str(text)) + else: + return len(unicode(text, "utf-8")) + else: + if sys.version_info[0] > 2: + return len(text.encode('utf-8')) + else: + return len(text) + +def swank_send(text): + global sock + + logtime('[---Sent---]') + logprint(text) + l = "%06x" % unicode_len(text) + t = l + text + if debug: + print( 'Sending:', t) + try: + if sys.version_info[0] > 2: + sock.send(t.encode('utf-8')) + else: + sock.send(t) + except socket.error: + vim.command("let s:swank_result='Socket error when sending to SWANK server.\n'") + swank_disconnect() + +def swank_recv_len(timeout): + global sock + + rec = '' + sock.setblocking(0) + ready = select.select([sock], [], [], timeout) + if ready[0]: + l = lenbytes + sock.setblocking(1) + try: + data = sock.recv(l) + except socket.error: + vim.command("let s:swank_result='Socket error when receiving from SWANK server.\n'") + swank_disconnect() + return rec + while data and len(rec) < lenbytes: + if sys.version_info[0] > 2: + rec = rec + data.decode('utf-8') + else: + rec = rec + data + l = l - len(data) + if l > 0: + try: + data = sock.recv(l) + except socket.error: + vim.command("let s:swank_result='Socket error when receiving from SWANK server.\n'") + swank_disconnect() + return rec + return rec + +def swank_recv(msglen, timeout): + global sock + + if msglen > 0: + sock.setblocking(0) + ready = select.select([sock], [], [], timeout) + if ready[0]: + sock.setblocking(1) + rec = '' + while True: + # Each codepoint has at least 1 byte; so we start with the + # number of bytes, and read more if needed. + try: + needed = msglen - unicode_len(rec) + except UnicodeDecodeError: + # Add single bytes until we've got valid UTF-8 again + needed = max(msglen - len(rec), 1) + if needed == 0: + return rec + try: + data = sock.recv(needed) + except socket.error: + vim.command("let s:swank_result='Socket error when receiving from SWANK server.\n'") + swank_disconnect() + return rec + if len(data) == 0: + vim.command("let s:swank_result='Socket error when receiving from SWANK server.\n'") + swank_disconnect() + return rec + if sys.version_info[0] > 2: + rec = rec + data.decode('utf-8') + else: + rec = rec + data + rec = '' + +def swank_parse_inspect_content(pcont): + """ + Parse the swank inspector content + """ + global inspect_lines + global inspect_newline + + if type(pcont[0]) != list: + return + vim.command('setlocal modifiable') + buf = vim.current.buffer + help_lines = int( vim.eval('exists("b:help_shown") ? len(b:help) : 1') ) + pos = help_lines + inspect_lines + buf[pos:] = [] + istate = pcont[1] + start = pcont[2] + end = pcont[3] + lst = [] + for el in pcont[0]: + logprint(str(el)) + newline = False + if type(el) == list: + if el[0] == ':action': + text = '{<' + unquote(el[2]) + '> ' + unquote(el[1]) + ' <>}' + else: + text = '{[' + unquote(el[2]) + '] ' + unquote(el[1]) + ' []}' + lst.append(text) + else: + text = unquote(el) + lst.append(text) + if text == "\n": + newline = True + lines = "".join(lst).split("\n") + if inspect_newline or pos > len(buf): + buf.append(lines) + else: + buf[pos-1] = buf[pos-1] + lines[0] + buf.append(lines[1:]) + inspect_lines = len(buf) - help_lines + inspect_newline = newline + if int(istate) > int(end): + # Swank returns end+1000 if there are more entries to request + buf.append(['', "[--more--]", "[--all---]"]) + inspect_path = vim.eval('s:inspect_path') + if len(inspect_path) > 1: + buf.append(['', '[<<] Return to ' + ' -> '.join(inspect_path[:-1])]) + else: + buf.append(['', '[<<] Exit Inspector']) + if int(istate) > int(end): + # There are more entries to request + # Save current range for the next request + vim.command("let b:range_start=" + start) + vim.command("let b:range_end=" + end) + vim.command("let b:inspect_more=" + end) + else: + # No ore entries left + vim.command("let b:inspect_more=0") + vim.command('call SlimvEndUpdate()') + +def swank_parse_inspect(struct): + """ + Parse the swank inspector output + """ + global inspect_lines + global inspect_newline + + vim.command('call SlimvBeginUpdate()') + vim.command('call SlimvOpenInspectBuffer()') + vim.command('setlocal modifiable') + buf = vim.current.buffer + title = parse_plist(struct, ':title') + vim.command('let b:inspect_title="' + title + '"') + buf[:] = ['Inspecting ' + title, '--------------------', ''] + vim.command('normal! 3G0') + vim.command('call SlimvHelp(2)') + pcont = parse_plist(struct, ':content') + inspect_lines = 3 + inspect_newline = True + swank_parse_inspect_content(pcont) + vim.command('call SlimvSetInspectPos("' + title + '")') + +def swank_parse_debug(struct): + """ + Parse the SLDB output + """ + vim.command('call SlimvBeginUpdate()') + vim.command('call SlimvOpenSldbBuffer()') + vim.command('setlocal modifiable') + buf = vim.current.buffer + [thread, level, condition, restarts, frames, conts] = struct[1:7] + buf[:] = [l for l in (unquote(condition[0]) + "\n" + unquote(condition[1])).splitlines()] + buf.append(['', 'Restarts:']) + for i in range( len(restarts) ): + r0 = unquote( restarts[i][0] ) + r1 = unquote( restarts[i][1] ) + r1 = r1.replace("\n", " ") + buf.append([str(i).rjust(3) + ': [' + r0 + '] ' + r1]) + buf.append(['', 'Backtrace:']) + for f in frames: + frame = str(f[0]) + ftext = unquote( f[1] ) + ftext = ftext.replace('\n', '') + ftext = ftext.replace('\\\\n', '') + buf.append([frame.rjust(3) + ': ' + ftext]) + vim.command('call SlimvEndUpdate()') + vim.command("call search('^Restarts:', 'w')") + vim.command('stopinsert') + # This text will be printed into the REPL buffer + return unquote(condition[0]) + "\n" + unquote(condition[1]) + "\n" + +def swank_parse_xref(struct): + """ + Parse the swank xref output + """ + buf = '' + for e in struct: + buf = buf + unquote(e[0]) + ' - ' + parse_location(e[1]) + '\n' + return buf + +def swank_parse_compile(struct): + """ + Parse compiler output + """ + buf = '' + warnings = struct[1] + time = struct[3] + filename = '' + if len(struct) > 5: + filename = struct[5] + if filename == '' or filename[0] != '"': + filename = '"' + filename + '"' + vim.command('let s:compiled_file=' + filename + '') + vim.command("let qflist = []") + if type(warnings) == list: + buf = '\n' + str(len(warnings)) + ' compiler notes:\n\n' + for w in warnings: + msg = parse_plist(w, ':message') + severity = parse_plist(w, ':severity') + if severity[0] == ':': + severity = severity[1:] + location = parse_plist(w, ':location') + if location[0] == ':error': + # "no error location available" + buf = buf + ' ' + unquote(location[1]) + '\n' + buf = buf + ' ' + severity + ': ' + msg + '\n\n' + else: + fname = unquote(location[1][1]) + pos = location[2][1] + if location[3] != 'nil': + snippet = unquote(location[3][1]).replace('\r', '') + buf = buf + snippet + '\n' + buf = buf + fname + ':' + pos + '\n' + buf = buf + ' ' + severity + ': ' + msg + '\n\n' + if location[2][0] == ':line': + lnum = pos + cnum = 1 + else: + [lnum, cnum] = parse_filepos(fname, int(pos)) + msg = msg.replace("'", "' . \"'\" . '") + qfentry = "{'filename':'"+fname+"','lnum':'"+str(lnum)+"','col':'"+str(cnum)+"','text':'"+msg+"'}" + logprint(qfentry) + vim.command("call add(qflist, " + qfentry + ")") + else: + buf = '\nCompilation finished. (No warnings) [' + time + ' secs]\n\n' + vim.command("call setqflist(qflist)") + return buf + +def swank_parse_list_threads(tl): + vim.command('call SlimvBeginUpdate()') + vim.command('call SlimvOpenThreadsBuffer()') + vim.command('setlocal modifiable') + buf = vim.current.buffer + buf[:] = ['Threads in pid '+pid, '--------------------'] + vim.command('call SlimvHelp(2)') + buf.append(['', 'Idx ID Status Name Priority', \ + '---- ---- -------------------- -------------------- ---------']) + vim.command('normal! G0') + lst = tl[1] + headers = lst.pop(0) + logprint(str(lst)) + idx = 0 + for t in lst: + priority = '' + if len(t) > 3: + priority = unquote(t[3]) + buf.append(["%3d: %3d %-22s %-22s %s" % (idx, int(t[0]), unquote(t[2]), unquote(t[1]), priority)]) + idx = idx + 1 + vim.command('normal! j') + vim.command('call SlimvEndUpdate()') + +def swank_parse_frame_call(struct, action): + """ + Parse frame call output + """ + vim.command('call SlimvGotoFrame(' + action.data + ')') + vim.command('setlocal modifiable') + buf = vim.current.buffer + win = vim.current.window + line = win.cursor[0] + if type(struct) == list: + buf[line:line] = [struct[1][1]] + else: + buf[line:line] = ['No frame call information'] + vim.command('call SlimvEndUpdate()') + +def swank_parse_frame_source(struct, action): + """ + Parse frame source output + http://comments.gmane.org/gmane.lisp.slime.devel/9961 ;-( + 'Well, let's say a missing feature: source locations are currently not available for code loaded as source.' + """ + vim.command('call SlimvGotoFrame(' + action.data + ')') + vim.command('setlocal modifiable') + buf = vim.current.buffer + win = vim.current.window + line = win.cursor[0] + if type(struct) == list and len(struct) == 4: + if struct[1] == 'nil': + [lnum, cnum] = [int(struct[2][1]), 1] + fname = 'Unknown file' + else: + [lnum, cnum] = parse_filepos(unquote(struct[1][1]), int(struct[2][1])) + fname = format_filename(struct[1][1]) + if lnum > 0: + s = ' in ' + fname + ' line ' + str(lnum) + else: + s = ' in ' + fname + ' byte ' + struct[2][1] + slines = s.splitlines() + if len(slines) > 2: + # Make a fold (closed) if there are too many lines + slines[ 0] = slines[ 0] + '{{{' + slines[-1] = slines[-1] + '}}}' + buf[line:line] = slines + vim.command(str(line+1) + 'foldclose') + else: + buf[line:line] = slines + else: + buf[line:line] = [' No source line information'] + vim.command('call SlimvEndUpdate()') + +def swank_parse_locals(struct, action): + """ + Parse frame locals output + """ + frame_num = action.data + vim.command('call SlimvGotoFrame(' + frame_num + ')') + vim.command('setlocal modifiable') + buf = vim.current.buffer + win = vim.current.window + line = win.cursor[0] + if type(struct) == list: + lines = ' Locals:' + num = 0 + for f in struct: + name = parse_plist(f, ':name') + id = parse_plist(f, ':id') + value = parse_plist(f, ':value') + lines = lines + '\n ' + name + ' = ' + value + # Remember variable index in frame + frame_locals[str(frame_num) + " " + name] = num + num = num + 1 + else: + lines = ' No locals' + buf[line:line] = lines.split("\n") + vim.command('call SlimvEndUpdate()') + +def swank_listen(): + global output_port + global use_unicode + global debug_active + global debug_activated + global read_string + global empty_last_line + global current_thread + global prompt + global package + global pid + global swank_version + global swank_param + + retval = '' + msgcount = 0 + #logtime('[- Listen--]') + timeout = recv_timeout + while msgcount < maxmessages: + rec = swank_recv_len(timeout) + if rec == '': + break + timeout = 0.0 + msgcount = msgcount + 1 + if debug: + print('swank_recv_len received', rec) + msglen = int(rec, 16) + if debug: + print('Received length:', msglen) + if msglen > 0: + # length already received so it must be followed by data + # use a higher timeout + rec = swank_recv(msglen, 1.0) + logtime('[-Received-]') + logprint(rec) + [s, r] = parse_sexpr( rec ) + if debug: + print('Parsed:', r) + if len(r) > 0: + r_id = r[-1] + message = r[0].lower() + if debug: + print('Message:', message) + + if message == ':open-dedicated-output-stream': + output_port = int( r[1].lower(), 10 ) + if debug: + print(':open-dedicated-output-stream result:', output_port) + break + + elif message == ':presentation-start': + retval = retval + new_line(retval) + + elif message == ':write-string': + # REPL has new output to display + if len(r) > 2 and r[2] == ':repl-result': + retval = retval + new_line(retval) + retval = retval + unquote(r[1]) + add_prompt = True + for k,a in actions.items(): + if a.pending and a.name.find('eval') >= 0: + add_prompt = False + break + if add_prompt: + retval = retval + new_line(retval) + get_prompt() + + elif message == ':read-string': + # REPL requests entering a string + read_string = r[1:3] + vim.command('let s:read_string_mode=1') + + elif message == ':read-from-minibuffer': + # REPL requests entering a string in the command line + read_string = r[1:3] + vim.command('let s:read_string_mode=1') + vim.command("let s:input_prompt='%s'" % unquote(r[3]).replace("'", "''")) + + elif message == ':indentation-update': + for el in r[1]: + indent_info[ unquote(el[0]) ] = el[1] + + elif message == ':new-package': + package = unquote( r[1] ) + prompt = unquote( r[2] ) + + elif message == ':return': + read_string = None + vim.command('let s:read_string_mode=0') + if len(r) > 1: + result = r[1][0].lower() + else: + result = "" + if type(r_id) == str and r_id in actions: + action = actions[r_id] + action.pending = False + else: + action = None + if log: + logtime('[Actionlist]') + for k,a in sorted(actions.items()): + if a.pending: + pending = 'pending ' + else: + pending = 'finished' + logprint("%s: %s %s %s" % (k, str(pending), a.name, a.result)) + + if result == ':ok': + params = r[1][1] + logprint('params: ' + str(params)) + if params == []: + params = 'nil' + if type(params) == str: + element = params.lower() + to_ignore = [':frame-call', ':quit-inspector', ':kill-thread', ':debug-thread'] + to_nodisp = [':describe-symbol'] + to_prompt = [':undefine-function', ':swank-macroexpand-1', ':swank-macroexpand-all', ':disassemble-form', \ + ':load-file', ':toggle-profile-fdefinition', ':profile-by-substring', ':swank-toggle-trace', 'sldb-break'] + if action and action.name in to_ignore: + # Just ignore the output for this message + pass + elif element == 'nil' and action and action.name == ':inspector-pop': + # Quit inspector + vim.command('call SlimvQuitInspect(0)') + elif element != 'nil' and action and action.name in to_nodisp: + # Do not display output, just store it in actions + action.result = unquote(params) + else: + retval = retval + new_line(retval) + if element != 'nil': + retval = retval + unquote(params) + if action: + action.result = retval + vim.command("let s:swank_ok_result='%s'" % retval.replace("'", "''").replace("\0", "^@")) + if element == 'nil' or (action and action.name in to_prompt): + # No more output from REPL, write new prompt + retval = retval + new_line(retval) + get_prompt() + + elif type(params) == list and params: + element = '' + if type(params[0]) == str: + element = params[0].lower() + if element == ':present': + # No more output from REPL, write new prompt + retval = retval + new_line(retval) + unquote(params[1][0][0]) + '\n' + get_prompt() + elif element == ':values': + retval = retval + new_line(retval) + if type(params[1]) == list: + retval = retval + unquote(params[1][0]) + '\n' + else: + retval = retval + unquote(params[1]) + '\n' + get_prompt() + elif element == ':suppress-output': + pass + elif element == ':pid': + conn_info = make_keys(params) + pid = conn_info[':pid'] + swank_version = conn_info.get(':version', 'nil') + if len(swank_version) == 8: + # Convert version to YYYY-MM-DD format + swank_version = swank_version[0:4] + '-' + swank_version[4:6] + '-' + swank_version[6:8] + imp = make_keys( conn_info[':lisp-implementation'] ) + pkg = make_keys( conn_info[':package'] ) + package = pkg[':name'] + prompt = pkg[':prompt'] + vim.command('let s:swank_version="' + swank_version + '"') + if len(swank_version) < 8 or swank_version >= '2011-11-08': + # Recent swank servers count bytes instead of unicode characters + use_unicode = False + vim.command('let s:lisp_version="' + imp[':version'] + '"') + retval = retval + new_line(retval) + retval = retval + imp[':type'] + ' ' + imp[':version'] + ' Port: ' + str(input_port) + ' Pid: ' + pid + '\n; SWANK ' + swank_version + retval = retval + '\n' + get_prompt() + logprint(' Package:' + package + ' Prompt:' + prompt) + elif element == ':name': + keys = make_keys(params) + retval = retval + new_line(retval) + retval = retval + ' ' + keys[':name'] + ' = ' + keys[':value'] + '\n' + elif element == ':title': + swank_parse_inspect(params) + elif element == ':compilation-result': + retval = retval + new_line(retval) + swank_parse_compile(params) + get_prompt() + else: + if action.name == ':simple-completions': + if type(params[0]) == list and len(params[0]) > 0 and type(params[0][0]) == str and params[0][0] != 'nil': + compl = "\n".join(params[0]) + retval = retval + compl.replace('"', '') + elif action.name == ':fuzzy-completions': + if type(params[0]) == list and type(params[0][0]) == list: + compl = "\n".join(map(lambda x: x[0], params[0])) + retval = retval + compl.replace('"', '') + elif action.name == ':find-definitions-for-emacs': + if type(params[0]) == list and type(params[0][1]) == list and params[0][1][0] == ':location': + tags_file = vim.eval("g:slimv_tags_file") + temp = open(tags_file, 'w') + myitems = [[elem[1][1][1], elem[1][2][1]] for elem in params] + for i in myitems: + temp.write(swank_param) + temp.write('\t') + temp.write(i[0].replace('"', '')) + temp.write('\t') + temp.write(":go %s" % i[1]) + temp.write('\n') + temp.close() + retval = swank_param + elif action.name == ':list-threads': + swank_parse_list_threads(r[1]) + elif action.name == ':xref': + retval = retval + '\n' + swank_parse_xref(r[1][1]) + retval = retval + new_line(retval) + get_prompt() + elif action.name == ':set-package': + package = unquote(params[0]) + prompt = unquote(params[1]) + retval = retval + '\n' + get_prompt() + elif action.name == ':untrace-all': + retval = retval + '\nUntracing:' + for f in params: + retval = retval + '\n' + ' ' + f + retval = retval + '\n' + get_prompt() + elif action.name == ':frame-call': + swank_parse_frame_call(params, action) + elif action.name == ':frame-source-location': + swank_parse_frame_source(params, action) + elif action.name == ':frame-locals-and-catch-tags': + swank_parse_locals(params[0], action) + elif action.name == ':profiled-functions': + retval = retval + '\n' + 'Profiled functions:\n' + for f in params: + retval = retval + ' ' + f + '\n' + retval = retval + get_prompt() + elif action.name == ':inspector-range': + swank_parse_inspect_content(params) + if action: + action.result = retval + + elif result == ':abort': + debug_active = False + vim.command('let s:sldb_level=-1') + if len(r[1]) > 1: + retval = retval + '; Evaluation aborted on ' + unquote(r[1][1]).replace('\n', '\n;') + '\n' + get_prompt() + else: + retval = retval + '; Evaluation aborted\n' + get_prompt() + + elif message == ':inspect': + swank_parse_inspect(r[1]) + + elif message == ':debug': + retval = retval + swank_parse_debug(r) + + elif message == ':debug-activate': + debug_active = True + debug_activated = True + current_thread = r[1] + sldb_level = r[2] + vim.command('let s:sldb_level=' + sldb_level) + frame_locals.clear() + + elif message == ':debug-return': + debug_active = False + vim.command('let s:sldb_level=-1') + retval = retval + '; Quit to level ' + r[2] + '\n' + get_prompt() + + elif message == ':ping': + [thread, tag] = r[1:3] + swank_send('(:emacs-pong ' + thread + ' ' + tag + ')') + if retval != '': + empty_last_line = (retval[-1] == '\n') + return retval + +def swank_rex(action, cmd, package, thread, data=''): + """ + Send an :emacs-rex command to SWANK + """ + global id + id = id + 1 + key = str(id) + actions[key] = swank_action(key, action, data) + form = '(:emacs-rex ' + cmd + ' ' + package + ' ' + thread + ' ' + str(id) + ')\n' + swank_send(form) + +def get_package(): + """ + Package set by slimv.vim or nil + """ + pkg = vim.eval("s:swank_package") + if pkg == '': + return 'nil' + else: + return requote(pkg) + +def get_swank_package(): + """ + Package set by slimv.vim or current swank package + """ + pkg = vim.eval("s:swank_package") + if pkg == '': + return requote(package) + else: + return requote(pkg) + +def get_indent_info(name): + indent = '' + if name in indent_info: + indent = indent_info[name] + vc = ":let s:indent='" + indent + "'" + vim.command(vc) + +############################################################################### +# Various SWANK messages +############################################################################### + +def swank_connection_info(): + global log + actions.clear() + indent_info.clear() + frame_locals.clear() + debug_activated = False + if vim.eval('exists("g:swank_log") && g:swank_log') != '0': + log = True + swank_rex(':connection-info', '(swank:connection-info)', 'nil', 't') + +def swank_create_repl(): + global swank_version + if len(swank_version) < 8 or swank_version >= '2014-10-01': + swank_rex(':create-repl', '(swank-repl:create-repl nil)', get_swank_package(), 't') + else: + swank_rex(':create-repl', '(swank:create-repl nil)', get_swank_package(), 't') + +def swank_eval(exp): + if len(swank_version) < 8 or swank_version >= '2014-10-01': + cmd = '(swank-repl:listener-eval ' + requote(exp) + ')' + else: + cmd = '(swank:listener-eval ' + requote(exp) + ')' + swank_rex(':listener-eval', cmd, get_swank_package(), ':repl-thread') + +def swank_eval_in_frame(exp, n): + pkg = get_swank_package() + if len(swank_version) < 8 or swank_version >= '2011-11-21': + cmd = '(swank:eval-string-in-frame ' + requote(exp) + ' ' + str(n) + ' ' + pkg + ')' + else: + cmd = '(swank:eval-string-in-frame ' + requote(exp) + ' ' + str(n) + ')' + swank_rex(':eval-string-in-frame', cmd, pkg, current_thread, str(n)) + +def swank_pprint_eval(exp): + cmd = '(swank:pprint-eval ' + requote(exp) + ')' + swank_rex(':pprint-eval', cmd, get_swank_package(), ':repl-thread') + +def swank_interrupt(): + swank_send('(:emacs-interrupt :repl-thread)') + +def swank_invoke_restart(level, restart): + cmd = '(swank:invoke-nth-restart-for-emacs ' + level + ' ' + restart + ')' + swank_rex(':invoke-nth-restart-for-emacs', cmd, 'nil', current_thread, restart) + +def swank_throw_toplevel(): + swank_rex(':throw-to-toplevel', '(swank:throw-to-toplevel)', 'nil', current_thread) + +def swank_invoke_abort(): + swank_rex(':sldb-abort', '(swank:sldb-abort)', 'nil', current_thread) + +def swank_invoke_continue(): + swank_rex(':sldb-continue', '(swank:sldb-continue)', 'nil', current_thread) + +def swank_require(contrib): + cmd = "(swank:swank-require '" + contrib + ')' + swank_rex(':swank-require', cmd, 'nil', 't') + +def swank_frame_call(frame): + cmd = '(swank-backend:frame-call ' + frame + ')' + swank_rex(':frame-call', cmd, 'nil', current_thread, frame) + +def swank_frame_source_loc(frame): + cmd = '(swank:frame-source-location ' + frame + ')' + swank_rex(':frame-source-location', cmd, 'nil', current_thread, frame) + +def swank_frame_locals(frame): + cmd = '(swank:frame-locals-and-catch-tags ' + frame + ')' + swank_rex(':frame-locals-and-catch-tags', cmd, 'nil', current_thread, frame) + +def swank_restart_frame(frame): + cmd = '(swank-backend:restart-frame ' + frame + ')' + swank_rex(':restart-frame', cmd, 'nil', current_thread, frame) + +def swank_set_package(pkg): + cmd = '(swank:set-package "' + pkg + '")' + swank_rex(':set-package', cmd, get_package(), ':repl-thread') + +def swank_describe_symbol(fn): + cmd = '(swank:describe-symbol "' + fn + '")' + swank_rex(':describe-symbol', cmd, get_package(), 't') + +def swank_describe_function(fn): + cmd = '(swank:describe-function "' + fn + '")' + swank_rex(':describe-function', cmd, get_package(), 't') + +def swank_op_arglist(op): + pkg = get_swank_package() + cmd = '(swank:operator-arglist "' + op + '" ' + pkg + ')' + swank_rex(':operator-arglist', cmd, pkg, 't') + +def swank_completions(symbol): + cmd = '(swank:simple-completions "' + symbol + '" ' + get_swank_package() + ')' + swank_rex(':simple-completions', cmd, 'nil', 't') + +def swank_fuzzy_completions(symbol): + cmd = '(swank:fuzzy-completions "' + symbol + '" ' + get_swank_package() + ' :limit 2000 :time-limit-in-msec 2000)' + swank_rex(':fuzzy-completions', cmd, 'nil', 't') + +def swank_undefine_function(fn): + cmd = '(swank:undefine-function "' + fn + '")' + swank_rex(':undefine-function', cmd, get_package(), 't') + +def swank_return_string(s): + global read_string + swank_send('(:emacs-return-string ' + read_string[0] + ' ' + read_string[1] + ' ' + requote(s) + ')') + read_string = None + vim.command('let s:read_string_mode=0') + +def swank_return(s): + global read_string + if s != '': + swank_send('(:emacs-return ' + read_string[0] + ' ' + read_string[1] + ' "' + s + '")') + read_string = None + vim.command('let s:read_string_mode=0') + +def swank_inspect(symbol): + global inspect_package + cmd = '(swank:init-inspector "' + symbol + '")' + inspect_package = get_swank_package() + swank_rex(':init-inspector', cmd, inspect_package, 't') + +def swank_inspect_nth_part(n): + cmd = '(swank:inspect-nth-part ' + str(n) + ')' + swank_rex(':inspect-nth-part', cmd, get_swank_package(), 't', str(n)) + +def swank_inspector_nth_action(n): + cmd = '(swank:inspector-call-nth-action ' + str(n) + ')' + swank_rex(':inspector-call-nth-action', cmd, 'nil', 't', str(n)) + +def swank_inspector_pop(): + # Remove the last entry from the inspect path + vim.command('let s:inspect_path = s:inspect_path[:-2]') + swank_rex(':inspector-pop', '(swank:inspector-pop)', 'nil', 't') + +def swank_inspect_in_frame(symbol, n): + key = str(n) + " " + symbol + if key in frame_locals: + cmd = '(swank:inspect-frame-var ' + str(n) + " " + str(frame_locals[key]) + ')' + else: + cmd = '(swank:inspect-in-frame "' + symbol + '" ' + str(n) + ')' + swank_rex(':inspect-in-frame', cmd, get_swank_package(), current_thread, str(n)) + +def swank_inspector_range(): + start = int(vim.eval("b:range_start")) + end = int(vim.eval("b:range_end")) + cmd = '(swank:inspector-range ' + str(end) + " " + str(end+(end-start)) + ')' + swank_rex(':inspector-range', cmd, inspect_package, 't') + +def swank_quit_inspector(): + global inspect_package + swank_rex(':quit-inspector', '(swank:quit-inspector)', 'nil', 't') + inspect_package = '' + +def swank_break_on_exception(flag): + if flag: + swank_rex(':break-on-exception', '(swank:break-on-exception "true")', 'nil', current_thread) + else: + swank_rex(':break-on-exception', '(swank:break-on-exception "false")', 'nil', current_thread) + +def swank_set_break(symbol): + cmd = '(swank:sldb-break "' + symbol + '")' + swank_rex(':sldb-break', cmd, get_package(), 't') + +def swank_toggle_trace(symbol): + cmd = '(swank:swank-toggle-trace "' + symbol + '")' + swank_rex(':swank-toggle-trace', cmd, get_package(), 't') + +def swank_untrace_all(): + swank_rex(':untrace-all', '(swank:untrace-all)', 'nil', 't') + +def swank_macroexpand(formvar): + form = vim.eval(formvar) + cmd = '(swank:swank-macroexpand-1 ' + requote(form) + ')' + swank_rex(':swank-macroexpand-1', cmd, get_package(), 't') + +def swank_macroexpand_all(formvar): + form = vim.eval(formvar) + cmd = '(swank:swank-macroexpand-all ' + requote(form) + ')' + swank_rex(':swank-macroexpand-all', cmd, get_package(), 't') + +def swank_disassemble(symbol): + cmd = '(swank:disassemble-form "' + "'" + symbol + '")' + swank_rex(':disassemble-form', cmd, get_package(), 't') + +def swank_xref(fn, type): + cmd = "(swank:xref '" + type + " '" + '"' + fn + '")' + swank_rex(':xref', cmd, get_package(), 't') + +def swank_compile_string(formvar): + form = vim.eval(formvar) + filename = vim.eval("substitute( expand('%:p'), '\\', '/', 'g' )") + line = vim.eval("line('.')") + pos = vim.eval("line2byte(line('.'))") + if vim.eval("&fileformat") == 'dos': + # Remove 0x0D, keep 0x0A characters + pos = str(int(pos) - int(line) + 1) + cmd = '(swank:compile-string-for-emacs ' + requote(form) + ' nil ' + "'((:position " + str(pos) + ") (:line " + str(line) + " 1)) " + requote(filename) + ' nil)' + swank_rex(':compile-string-for-emacs', cmd, get_package(), 't') + +def swank_compile_file(name): + cmd = '(swank:compile-file-for-emacs ' + requote(name) + ' t)' + swank_rex(':compile-file-for-emacs', cmd, get_package(), 't') + +def swank_load_file(name): + cmd = '(swank:load-file ' + requote(name) + ')' + swank_rex(':load-file', cmd, get_package(), 't') + +def swank_toggle_profile(symbol): + cmd = '(swank:toggle-profile-fdefinition "' + symbol + '")' + swank_rex(':toggle-profile-fdefinition', cmd, get_package(), 't') + +def swank_profile_substring(s, package): + if package == '': + p = 'nil' + else: + p = requote(package) + cmd = '(swank:profile-by-substring ' + requote(s) + ' ' + p + ')' + swank_rex(':profile-by-substring', cmd, get_package(), 't') + +def swank_unprofile_all(): + swank_rex(':unprofile-all', '(swank:unprofile-all)', 'nil', 't') + +def swank_profiled_functions(): + swank_rex(':profiled-functions', '(swank:profiled-functions)', 'nil', 't') + +def swank_profile_report(): + swank_rex(':profile-report', '(swank:profile-report)', 'nil', 't') + +def swank_profile_reset(): + swank_rex(':profile-reset', '(swank:profile-reset)', 'nil', 't') + +def swank_list_threads(): + cmd = '(swank:list-threads)' + swank_rex(':list-threads', cmd, get_swank_package(), 't') + +def swank_kill_thread(index): + cmd = '(swank:kill-nth-thread ' + str(index) + ')' + swank_rex(':kill-thread', cmd, get_swank_package(), 't', str(index)) + +def swank_find_definitions_for_emacs(str): + global swank_param + swank_param = str + cmd = '(swank:find-definitions-for-emacs "' + str + '")' + swank_rex(':find-definitions-for-emacs', cmd, get_package(), ':repl-thread') + +def swank_debug_thread(index): + cmd = '(swank:debug-nth-thread ' + str(index) + ')' + swank_rex(':debug-thread', cmd, get_swank_package(), 't', str(index)) + +def swank_quit_lisp(): + swank_rex(':quit-lisp', '(swank:quit-lisp)', 'nil', 't') + swank_disconnect() + +############################################################################### +# Generic SWANK connection handling +############################################################################### + +def swank_connect(host, port, resultvar): + """ + Create socket to swank server and request connection info + """ + global sock + global input_port + + if not sock: + try: + input_port = port + swank_server = (host, input_port) + sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + sock.connect(swank_server) + swank_connection_info() + vim.command('let ' + resultvar + '=""') + return sock + except socket.error: + vim.command('let ' + resultvar + '="SWANK server is not running."') + sock = None + return sock + vim.command('let ' + resultvar + '=""') + +def swank_disconnect(): + """ + Disconnect from swank server + """ + global sock + try: + # Try to close socket but don't care if doesn't succeed + sock.close() + finally: + sock = None + vim.command('let s:swank_connected = 0') + vim.command("let s:swank_result='Connection to SWANK server is closed.\n'") + +def swank_input(formvar): + global empty_last_line + + empty_last_line = True + form = vim.eval(formvar) + if read_string: + # We are in :read-string mode, pass string entered to REPL + swank_return_string(form) + elif form[0] == '[': + if form[1] == '-': + swank_inspector_pop() + else: + swank_inspect_nth_part(form[1:-2]) + elif form[0] == '<': + swank_inspector_nth_action(form[1:-2]) + else: + # Normal s-expression evaluation + swank_eval(form) + +def actions_pending(): + count = 0 + for k,a in sorted(actions.items()): + if a.pending: + count = count + 1 + vc = ":let s:swank_actions_pending=" + str(count) + vim.command(vc) + return count + +def append_repl(text, varname_given): + """ + Append text at the end of the REPL buffer + Does not bring REPL buffer into focus if loaded but not displayed in any window + """ + repl_buf = int(vim.eval("s:repl_buf")) + if repl_buf < 0 or int(vim.eval("buflisted(%d) && bufloaded(%d)" % (repl_buf, repl_buf))) == 0: + # No REPL buffer exists + vim.command('call SlimvBeginUpdate()') + vim.command('call SlimvOpenReplBuffer()') + vim.command('call SlimvRestoreFocus(0)') + repl_buf = int(vim.eval("s:repl_buf")) + for buf in vim.buffers: + if buf.number == repl_buf: + break + if repl_buf > 0 and buf.number == repl_buf: + if varname_given: + lines = vim.eval(text).split("\n") + else: + lines = text.split("\n") + if lines[0] != '': + # Concatenate first line to the last line of the buffer + nlines = len(buf) + buf[nlines-1] = buf[nlines-1] + lines[0] + if len(lines) > 1: + # Append all subsequent lines + buf.append(lines[1:]) + + # Keep only the last g:slimv_repl_max_len lines + repl_max_len = int(vim.eval("g:slimv_repl_max_len")) + repl_prompt_line = int(vim.eval("getbufvar(%d, 'repl_prompt_line')" % repl_buf)) + lastline = len(buf) + prompt_offset = lastline - repl_prompt_line + if repl_max_len > 0 and lastline > repl_max_len: + form = "\n".join(buf[0:(lastline-repl_max_len)]) + ending = vim.eval("substitute(s:CloseForm('%s'), '\\n', '', 'g')" % form.replace("'", "''")) + # Delete extra lines + buf[0:(lastline - repl_max_len)] = [] + if ending.find(')') >= 0 or ending.find(']') >= 0 or ending.find(']') >= 0: + # Reverse the ending and replace matched characters with their pairs + start = ending[::-1] + start = start.replace(')', '(').replace(']', '[').replace('}', '{').replace("\n", '') + # Re-balance the beginning of the buffer + buf[0:0] = [start + " .... ; output shortened"] + vim.command("call setbufvar(%d, 'repl_prompt_line', %d)" % (repl_buf, len(buf) - prompt_offset)) + + # Move cursor at the end of REPL buffer in case it was originally after the prompt + vim.command('call SlimvReplSetCursorPos(0)') + +def swank_output(echo): + global sock + global debug_active + global debug_activated + + if not sock: + return "SWANK server is not connected." + count = 0 + #logtime('[- Output--]') + debug_activated = False + result = swank_listen() + pending = actions_pending() + while sock and result == '' and pending > 0 and count < listen_retries: + result = swank_listen() + pending = actions_pending() + count = count + 1 + if echo and result != '': + # Append SWANK output to REPL buffer + append_repl(result, 0) + if debug_activated and debug_active: + # Debugger was activated in this run + vim.command('call SlimvOpenSldbBuffer()') + vim.command('call SlimvEndUpdate()') + vim.command("call search('^Restarts:', 'w')") + +def swank_response(name): + #logtime('[-Response-]') + for k,a in sorted(actions.items()): + if not a.pending and (name == '' or name == a.name): + vc = ":let s:swank_action='" + a.name + "'" + vim.command(vc) + vim.command("let s:swank_result='%s'" % a.result.replace("'", "''")) + actions.pop(a.id) + actions_pending() + return + vc = ":let s:swank_action=''" + vc = ":let s:swank_result=''" + vim.command(vc) + actions_pending() + -- cgit v1.2.3-70-g09d2