A netstring and bencode implementation for Clojure.
A netstring and bencode implementation for Clojure.
A proof-of-concept command-line client for nREPL. Please see e.g. REPL-y for a proper command-line nREPL client @ https://github.com/trptcolin/reply/
A proof-of-concept command-line client for nREPL. Please see e.g. REPL-y for a proper command-line nREPL client @ https://github.com/trptcolin/reply/
Server configuration utilities. Some server options can be configured via configuration files (local or global). This namespace provides convenient API to work with them.
The config resolution algorithm is the following: The global config file .nrepl/nrepl.edn is merged with any local config file (.nrepl.edn) if present. The values in the local config file take precedence.
Server configuration utilities. Some server options can be configured via configuration files (local or global). This namespace provides convenient API to work with them. The config resolution algorithm is the following: The global config file .nrepl/nrepl.edn is merged with any local config file (.nrepl.edn) if present. The values in the local config file take precedence.
High level nREPL client support.
High level nREPL client support.
Support for a hook for conveying errors interactively, akin to the :caught
option of clojure.main/repl
. See the docstring of wrap-caught
and the
Evaluation Errors section of the Middleware documentation for more
information.
Support for a hook for conveying errors interactively, akin to the `:caught` option of `clojure.main/repl`. See the docstring of `wrap-caught` and the Evaluation Errors section of the Middleware documentation for more information.
Code completion middleware.
The middleware is a simple wrapper around the
functionality in nrepl.completion
. Its
API is inspired by cider-nrepl's "complete" middleware.
The middleware can be configured to use a different completion function via a dynamic variable or a request parameter.
NOTE: The functionality here is experimental and the API is subject to changes.
Code completion middleware. The middleware is a simple wrapper around the functionality in `nrepl.completion`. Its API is inspired by cider-nrepl's "complete" middleware. The middleware can be configured to use a different completion function via a dynamic variable or a request parameter. NOTE: The functionality here is experimental and the API is subject to changes.
Support the ability to interactively update the middleware of the running nREPL server. This can be used by tools to configure an existing instance of an environment after connection.
It can also be used to load extra namespaces, in addition to the ones that new middleware are defined in, to handle existing middleware that performs deferred loading.
When combined with the sideloader, this could be used to inject middleware that are unknown to the server prior to connection.
Support the ability to interactively update the middleware of the *running* nREPL server. This can be used by tools to configure an existing instance of an environment after connection. It can also be used to load extra namespaces, in addition to the ones that new middleware are defined in, to handle existing middleware that performs deferred loading. When combined with the sideloader, this could be used to inject middleware that are unknown to the server prior to connection.
Supports the ability to evaluation code. The name of the middleware is slightly misleading, as interrupt is currently supported at a session level but the name is retained for backwards compatibility.
Supports the ability to evaluation code. The name of the middleware is slightly misleading, as interrupt is currently supported at a session level but the name is retained for backwards compatibility.
Symbol info lookup middleware.
It's meant to provide you with useful data like definition location, parameter lists, etc.
The middleware can be configured to use a different lookup function via a dynamic variable or a request parameter.
NOTE: The functionality here is experimental and the API is subject to changes.
Symbol info lookup middleware. It's meant to provide you with useful data like definition location, parameter lists, etc. The middleware can be configured to use a different lookup function via a dynamic variable or a request parameter. NOTE: The functionality here is experimental and the API is subject to changes.
Support for configurable printing. See the docstring of wrap-print
and the
Pretty Printing section of the Middleware documentation for more information.
Support for configurable printing. See the docstring of `wrap-print` and the Pretty Printing section of the Middleware documentation for more information.
Support for persistent, cross-connection REPL sessions.
Support for persistent, cross-connection REPL sessions.
Support the ability to interactively load resources (including Clojure source files) and classes from the client. This can be used to add dependencies to the nREPL environment after initial startup.
Support the ability to interactively load resources (including Clojure source files) and classes from the client. This can be used to add dependencies to the nREPL environment after initial startup.
Misc utilities used in nREPL's implementation (potentially also useful for anyone extending it).
Misc utilities used in nREPL's implementation (potentially also useful for anyone extending it).
Default server implementations
Default server implementations
Compatibility layer for java.io vs java.nio sockets to allow an incremental transition to nio, since the JDK's filesystem sockets don't support the java.io socket interface, and we can't use the compatibility layer for bidirectional read and write: https://bugs.openjdk.java.net/browse/JDK-4509080.
Compatibility layer for java.io vs java.nio sockets to allow an incremental transition to nio, since the JDK's filesystem sockets don't support the java.io socket interface, and we can't use the compatibility layer for bidirectional read and write: https://bugs.openjdk.java.net/browse/JDK-4509080.
Socket-related code that depends on classes that are only known at run time, not complile time. This just allows us to isolate reflections we can't avoid, so that we can easily ask eastwood to ignore them. This namespace should only be needed until JDK 16+ can be assumed.
Socket-related code that depends on classes that are only known at run time, not complile time. This just allows us to isolate reflections we can't avoid, so that we can easily ask eastwood to ignore them. This namespace should only be needed until JDK 16+ can be assumed.
Code completion functionality.
The functionality here is experimental and the API is subject to changes.
Code completion functionality. The functionality here is experimental and the API is subject to changes.
Symbol info lookup.
It's meant to provide you with useful data like definition location, parameter lists, etc.
NOTE: The functionality here is experimental and the API is subject to changes.
Symbol info lookup. It's meant to provide you with useful data like definition location, parameter lists, etc. NOTE: The functionality here is experimental and the API is subject to changes.
Pretty-print related utilities. All functions here are simple wrappers compatible with the expectations of nrepl.middleware.print/wrap-print.
Pretty-print related utilities. All functions here are simple wrappers compatible with the expectations of nrepl.middleware.print/wrap-print.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close