+add function clojure.tools.namespace.track Returns an updated dependency tracker w...
+add-files function clojure.tools.namespace.file Reads ns declarations from files; return...
+
+
+
+
B
+
+
+
+
+
C
+
+clear function clojure.tools.namespace.repl Clears all state from the namespace/file...
+clj var clojure.tools.namespace.find Platform definition of file extensions a...
+clj-read-opts var clojure.tools.namespace.parse Map of options for tools.reader/read al...
+cljs var clojure.tools.namespace.find Platform definition of file extensions a...
+cljs-read-opts var clojure.tools.namespace.parse Map of options for tools.reader/read al...
+clojure-extensions var clojure.tools.namespace.file File extensions for Clojure (JVM) files..
+clojure-file? function clojure.tools.namespace.file Returns true if the java.io.File represe...
+clojure-source-file? function clojure.tools.namespace DEPRECATED; moved to clojure.tools.namespace....
+clojure-sources-in-jar function clojure.tools.namespace DEPRECATED; moved to clojure.tools.namespace....
+clojure-sources-in-jar function clojure.tools.namespace.find DEPRECATED: replaced by sources-in-jar ...
+clojurescript-extensions var clojure.tools.namespace.file File extensions for ClojureScript files..
+clojurescript-file? function clojure.tools.namespace.file Returns true if the java.io.File represe...
+comment? function clojure.tools.namespace DEPRECATED; moved to clojure.tools.namespace....
+comment? function clojure.tools.namespace.parse Returns true if form is a (comment ...).
+
+
+
+
D
+
+depend function clojure.tools.namespace.dependency Returns a new graph with a depende...
+DependencyGraph protocol clojure.tools.namespace.dependency
+DependencyGraphUpdate protocol clojure.tools.namespace.dependency
+dependent? function clojure.tools.namespace.dependency True if y is a dependent of x..
+depends? function clojure.tools.namespace.dependency True if x is directly or transitiv...
+deps-from-ns-decl function clojure.tools.namespace.parse Given an (ns...) declaration form (unev...
+disable-reload! function clojure.tools.namespace.repl Adds metadata to namespace (or *ns* if u...
+disable-unload! function clojure.tools.namespace.repl Adds metadata to namespace (or *ns* if u...
+
+
+
+
E
+
+
+
+
+
F
+
+file-with-extension? function clojure.tools.namespace.file Returns true if the java.io.File represe...
+find-clojure-sources-in-dir function clojure.tools.namespace DEPRECATED; moved to clojure.tools.namespace....
+find-clojure-sources-in-dir function clojure.tools.namespace.find DEPRECATED: replaced by find-sources-in-...
+find-namespaces function clojure.tools.namespace.find Searches a sequence of java.io.File obje...
+find-namespaces-in-dir function clojure.tools.namespace DEPRECATED; moved to clojure.tools.namespace....
+find-namespaces-in-dir function clojure.tools.namespace.find Searches dir recursively for (ns ...) de...
+find-namespaces-in-jarfile function clojure.tools.namespace DEPRECATED; moved to clojure.tools.namespace....
+find-namespaces-in-jarfile function clojure.tools.namespace.find Searches the JAR file for platform sourc...
+find-namespaces-on-classpath function clojure.tools.namespace DEPRECATED; use clojure.tools.namespace.find/...
+find-ns-decls function clojure.tools.namespace.find Searches a sequence of java.io.File obje...
+find-ns-decls-in-dir function clojure.tools.namespace DEPRECATED; moved to clojure.tools.namespace....
+find-ns-decls-in-dir function clojure.tools.namespace.find Searches dir recursively for (ns ...) de...
+find-ns-decls-in-jarfile function clojure.tools.namespace DEPRECATED; moved to clojure.tools.namespace....
+find-ns-decls-in-jarfile function clojure.tools.namespace.find Searches the JAR file for source files c...
+find-ns-decls-on-classpath function clojure.tools.namespace DEPRECATED; use clojure.tools.namespace.find/...
+find-sources-in-dir function clojure.tools.namespace.find Searches recursively under dir for sourc...
+
+
+
+
G
+
+graph function clojure.tools.namespace.dependency Returns a new, empty, dependency g...
+
+
+
+
H
+
+
+
+
+
I
+
+immediate-dependencies function clojure.tools.namespace.dependency Returns the set of immediate depen...
+immediate-dependents function clojure.tools.namespace.dependency Returns the set of immediate depen...
+
+
+
+
J
+
+
+
+
+
K
+
+
+
+
+
L
+
+
+
+
+
M
+
+->MapDependencyGraph function clojure.tools.namespace.dependency Positional factory function for cl...
+map->MapDependencyGraph function clojure.tools.namespace.dependency Factory function for class clojure...
+MapDependencyGraph record clojure.tools.namespace.dependency
+move-ns function clojure.tools.namespace.move ALPHA: subject to change. Moves the .clj...
+move-ns-file function clojure.tools.namespace.move ALPHA: subject to change. Moves the .clj...
+
+
+
+
N
+
+name-from-ns-decl function clojure.tools.namespace.parse Given an (ns...) declaration form (unev...
+nodes function clojure.tools.namespace.dependency Returns the set of all nodes in gr...
+ns-decl? function clojure.tools.namespace DEPRECATED; moved to clojure.tools.namespace....
+ns-decl? function clojure.tools.namespace.parse Returns true if form is a (ns ...) decl...
+
+
+
+
O
+
+
+
+
+
P
+
+
+
+
+
Q
+
+
+
+
+
R
+
+read-file-ns-decl function clojure.tools.namespace DEPRECATED; moved to clojure.tools.namespace....
+read-file-ns-decl function clojure.tools.namespace.file Attempts to read a (ns ...) declaration ...
+read-ns-decl function clojure.tools.namespace DEPRECATED; moved to clojure.tools.namespace....
+read-ns-decl function clojure.tools.namespace.parse Attempts to read a (ns ...) declaration...
+read-ns-decl-from-jarfile-entry function clojure.tools.namespace DEPRECATED; moved to clojure.tools.namespace....
+read-ns-decl-from-jarfile-entry function clojure.tools.namespace.find Attempts to read a (ns ...) declaration ...
+refresh function clojure.tools.namespace.repl Scans source code directories for files ...
+refresh-all function clojure.tools.namespace.repl Scans source code directories for all Cl...
+refresh-scanned function clojure.tools.namespace.repl Reloads namespaces in dependency order. ...
+remove function clojure.tools.namespace.track Returns an updated dependency tracker f...
+remove-all function clojure.tools.namespace.dependency Returns a new dependency graph wit...
+remove-edge function clojure.tools.namespace.dependency Returns a new graph with the depen...
+remove-files function clojure.tools.namespace.file Returns an updated dependency tracker wi...
+remove-lib function clojure.tools.namespace.reload Remove lib's namespace and remove lib ...
+remove-node function clojure.tools.namespace.dependency Removes the node from the dependen...
+replace-ns-symbol function clojure.tools.namespace.move ALPHA: subject to change. Given Clojure ...
+
+
+
+
S
+
+scan function clojure.tools.namespace.dir DEPRECATED: replaced by scan-dirs. Scans...
+scan function clojure.tools.namespace.repl Scans directories for files which have c...
+scan-all function clojure.tools.namespace.dir DEPRECATED: replaced by scan-dirs. Scans...
+scan-dirs function clojure.tools.namespace.dir Scans directories for files which have ch...
+scan-files function clojure.tools.namespace.dir Scans files to find those which have chan...
+set-refresh-dirs function clojure.tools.namespace.repl Sets the directories which are scanned b...
+sources-in-jar function clojure.tools.namespace.find Returns a sequence of source file names ...
+
+
+
+
T
+
+topo-comparator function clojure.tools.namespace.dependency Returns a comparator fn which prod...
+topo-sort function clojure.tools.namespace.dependency Returns a topologically-sorted lis...
+track-reload function clojure.tools.namespace.reload Executes all pending unload/reload ope...
+track-reload-one function clojure.tools.namespace.reload Executes the next pending unload/reloa...
+tracker function clojure.tools.namespace.track Returns a new, empty dependency tracker.
+transitive-dependencies function clojure.tools.namespace.dependency Returns the set of all things whic...
+transitive-dependencies-set function clojure.tools.namespace.dependency Returns the set of all things whic...
+transitive-dependents function clojure.tools.namespace.dependency Returns the set of all things whic...
+transitive-dependents-set function clojure.tools.namespace.dependency Returns the set of all things whic...
+
+
+
+
U
+
+
+
+
+
V
+
+
+
+
+
W
+
+
+
+
+
X
+
+
+
+
+
Y
+
+
+
+
+
Z
+
+
+
+
+
Other
+
+
+
+
+
+
+
+
+
+
+
+
Copyright 2007-2023 by Rich Hickey and the various contributors
+
+
+
Logo & site design by Tom Hickey.
+ Clojure auto-documentation system by Tom Faulhaber.
THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
-PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR
-DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS
-AGREEMENT.
-
-
1. DEFINITIONS
-
-
"Contribution" means:
-
-
a) in the case of the initial Contributor, the initial
-code and documentation distributed under this Agreement, and
-
b) in the case of each subsequent Contributor:
-
i) changes to the Program, and
-
ii) additions to the Program;
-
where such changes and/or additions to the Program
-originate from and are distributed by that particular Contributor. A
-Contribution 'originates' from a Contributor if it was added to the
-Program by such Contributor itself or anyone acting on such
-Contributor's behalf. Contributions do not include additions to the
-Program which: (i) are separate modules of software distributed in
-conjunction with the Program under their own license agreement, and (ii)
-are not derivative works of the Program.
-
-
"Contributor" means any person or entity that distributes
-the Program.
-
-
"Licensed Patents" mean patent claims licensable by a
-Contributor which are necessarily infringed by the use or sale of its
-Contribution alone or when combined with the Program.
-
-
"Program" means the Contributions distributed in accordance
-with this Agreement.
-
-
"Recipient" means anyone who receives the Program under
-this Agreement, including all Contributors.
-
-
2. GRANT OF RIGHTS
-
-
a) Subject to the terms of this Agreement, each
-Contributor hereby grants Recipient a non-exclusive, worldwide,
-royalty-free copyright license to reproduce, prepare derivative works
-of, publicly display, publicly perform, distribute and sublicense the
-Contribution of such Contributor, if any, and such derivative works, in
-source code and object code form.
-
-
b) Subject to the terms of this Agreement, each
-Contributor hereby grants Recipient a non-exclusive, worldwide,
-royalty-free patent license under Licensed Patents to make, use, sell,
-offer to sell, import and otherwise transfer the Contribution of such
-Contributor, if any, in source code and object code form. This patent
-license shall apply to the combination of the Contribution and the
-Program if, at the time the Contribution is added by the Contributor,
-such addition of the Contribution causes such combination to be covered
-by the Licensed Patents. The patent license shall not apply to any other
-combinations which include the Contribution. No hardware per se is
-licensed hereunder.
-
-
c) Recipient understands that although each Contributor
-grants the licenses to its Contributions set forth herein, no assurances
-are provided by any Contributor that the Program does not infringe the
-patent or other intellectual property rights of any other entity. Each
-Contributor disclaims any liability to Recipient for claims brought by
-any other entity based on infringement of intellectual property rights
-or otherwise. As a condition to exercising the rights and licenses
-granted hereunder, each Recipient hereby assumes sole responsibility to
-secure any other intellectual property rights needed, if any. For
-example, if a third party patent license is required to allow Recipient
-to distribute the Program, it is Recipient's responsibility to acquire
-that license before distributing the Program.
-
-
d) Each Contributor represents that to its knowledge it
-has sufficient copyright rights in its Contribution, if any, to grant
-the copyright license set forth in this Agreement.
-
-
3. REQUIREMENTS
-
-
A Contributor may choose to distribute the Program in object code
-form under its own license agreement, provided that:
-
-
a) it complies with the terms and conditions of this
-Agreement; and
-
-
b) its license agreement:
-
-
i) effectively disclaims on behalf of all Contributors
-all warranties and conditions, express and implied, including warranties
-or conditions of title and non-infringement, and implied warranties or
-conditions of merchantability and fitness for a particular purpose;
-
-
ii) effectively excludes on behalf of all Contributors
-all liability for damages, including direct, indirect, special,
-incidental and consequential damages, such as lost profits;
-
-
iii) states that any provisions which differ from this
-Agreement are offered by that Contributor alone and not by any other
-party; and
-
-
iv) states that source code for the Program is available
-from such Contributor, and informs licensees how to obtain it in a
-reasonable manner on or through a medium customarily used for software
-exchange.
-
-
When the Program is made available in source code form:
-
-
a) it must be made available under this Agreement; and
-
-
b) a copy of this Agreement must be included with each
-copy of the Program.
-
-
Contributors may not remove or alter any copyright notices contained
-within the Program.
-
-
Each Contributor must identify itself as the originator of its
-Contribution, if any, in a manner that reasonably allows subsequent
-Recipients to identify the originator of the Contribution.
-
-
4. COMMERCIAL DISTRIBUTION
-
-
Commercial distributors of software may accept certain
-responsibilities with respect to end users, business partners and the
-like. While this license is intended to facilitate the commercial use of
-the Program, the Contributor who includes the Program in a commercial
-product offering should do so in a manner which does not create
-potential liability for other Contributors. Therefore, if a Contributor
-includes the Program in a commercial product offering, such Contributor
-("Commercial Contributor") hereby agrees to defend and
-indemnify every other Contributor ("Indemnified Contributor")
-against any losses, damages and costs (collectively "Losses")
-arising from claims, lawsuits and other legal actions brought by a third
-party against the Indemnified Contributor to the extent caused by the
-acts or omissions of such Commercial Contributor in connection with its
-distribution of the Program in a commercial product offering. The
-obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement. In
-order to qualify, an Indemnified Contributor must: a) promptly notify
-the Commercial Contributor in writing of such claim, and b) allow the
-Commercial Contributor to control, and cooperate with the Commercial
-Contributor in, the defense and any related settlement negotiations. The
-Indemnified Contributor may participate in any such claim at its own
-expense.
-
-
For example, a Contributor might include the Program in a commercial
-product offering, Product X. That Contributor is then a Commercial
-Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance
-claims and warranties are such Commercial Contributor's responsibility
-alone. Under this section, the Commercial Contributor would have to
-defend claims against the other Contributors related to those
-performance claims and warranties, and if a court requires any other
-Contributor to pay any damages as a result, the Commercial Contributor
-must pay those damages.
-
-
5. NO WARRANTY
-
-
EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
-PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
-OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION,
-ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
-OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and
-distributing the Program and assumes all risks associated with its
-exercise of rights under this Agreement , including but not limited to
-the risks and costs of program errors, compliance with applicable laws,
-damage to or loss of data, programs or equipment, and unavailability or
-interruption of operations.
-
-
6. DISCLAIMER OF LIABILITY
-
-
EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT
-NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
-WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
-DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
-HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
-
7. GENERAL
-
-
If any provision of this Agreement is invalid or unenforceable under
-applicable law, it shall not affect the validity or enforceability of
-the remainder of the terms of this Agreement, and without further action
-by the parties hereto, such provision shall be reformed to the minimum
-extent necessary to make such provision valid and enforceable.
-
-
If Recipient institutes patent litigation against any entity
-(including a cross-claim or counterclaim in a lawsuit) alleging that the
-Program itself (excluding combinations of the Program with other
-software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of the
-date such litigation is filed.
-
-
All Recipient's rights under this Agreement shall terminate if it
-fails to comply with any of the material terms or conditions of this
-Agreement and does not cure such failure in a reasonable period of time
-after becoming aware of such noncompliance. If all Recipient's rights
-under this Agreement terminate, Recipient agrees to cease use and
-distribution of the Program as soon as reasonably practicable. However,
-Recipient's obligations under this Agreement and any licenses granted by
-Recipient relating to the Program shall continue and survive.
-
-
Everyone is permitted to copy and distribute copies of this
-Agreement, but in order to avoid inconsistency the Agreement is
-copyrighted and may only be modified in the following manner. The
-Agreement Steward reserves the right to publish new versions (including
-revisions) of this Agreement from time to time. No one other than the
-Agreement Steward has the right to modify this Agreement. The Eclipse
-Foundation is the initial Agreement Steward. The Eclipse Foundation may
-assign the responsibility to serve as the Agreement Steward to a
-suitable separate entity. Each new version of the Agreement will be
-given a distinguishing version number. The Program (including
-Contributions) may always be distributed subject to the version of the
-Agreement under which it was received. In addition, after a new version
-of the Agreement is published, Contributor may elect to distribute the
-Program (including its Contributions) under the new version. Except as
-expressly stated in Sections 2(a) and 2(b) above, Recipient receives no
-rights or licenses to the intellectual property of any Contributor under
-this Agreement, whether expressly, by implication, estoppel or
-otherwise. All rights in the Program not expressly granted under this
-Agreement are reserved.
-
-
This Agreement is governed by the laws of the State of New York and
-the intellectual property laws of the United States of America. No party
-to this Agreement will bring a legal action under this Agreement more
-than one year after the cause of action arose. Each party waives its
-rights to a jury trial in any resulting litigation.
This namespace is DEPRECATED; most functions have been moved to
+other namespaces
+Added in tools.namespace version 0.1.0
+Deprecated since tools.namespace version 0.2.1
+
+
+
+
+
+
+
Public Variables and Functions
+
+
+
+
clojure-source-file?
+ function
+
Usage: (clojure-source-file? file)
+
+
DEPRECATED; moved to clojure.tools.namespace.file
+
+Returns true if file is a normal file with a .clj or .cljc extension.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
clojure-sources-in-jar
+ function
+
Usage: (clojure-sources-in-jar jar-file)
+
+
DEPRECATED; moved to clojure.tools.namespace.find
+
+Returns a sequence of filenames ending in .clj or .cljc found in the JAR file.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
comment?
+ function
+
Usage: (comment? form)
+
+
DEPRECATED; moved to clojure.tools.namespace.parse
+
+Returns true if form is a (comment ...)
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
find-clojure-sources-in-dir
+ function
+
Usage: (find-clojure-sources-in-dir dir)
+
+
DEPRECATED; moved to clojure.tools.namespace.find
+
+Searches recursively under dir for Clojure source files (.clj, .cljc).
+Returns a sequence of File objects, in breadth-first sort order.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
find-namespaces-in-dir
+ function
+
Usage: (find-namespaces-in-dir dir)
+
+
DEPRECATED; moved to clojure.tools.namespace.find
+
+Searches dir recursively for (ns ...) declarations in Clojure
+source files; returns the symbol names of the declared namespaces.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
find-namespaces-in-jarfile
+ function
+
Usage: (find-namespaces-in-jarfile jarfile)
+
+
DEPRECATED; moved to clojure.tools.namespace.find
+
+Searches the JAR file for Clojure source files containing (ns ...)
+declarations. Returns a sequence of the symbol names of the
+declared namespaces.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
find-namespaces-on-classpath
+ function
+
Usage: (find-namespaces-on-classpath)
+
+
DEPRECATED; use clojure.tools.namespace.find/find-namespaces
+and clojure.java.classpath/classpath from
+http://github.com/clojure/java.classpath
+
+Searches CLASSPATH (both directories and JAR files) for Clojure
+source files containing (ns ...) declarations. Returns a sequence
+of the symbol names of the declared namespaces.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
find-ns-decls-in-dir
+ function
+
Usage: (find-ns-decls-in-dir dir)
+
+
DEPRECATED; moved to clojure.tools.namespace.find
+
+Searches dir recursively for (ns ...) declarations in Clojure
+source files; returns the unevaluated ns declarations.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
find-ns-decls-in-jarfile
+ function
+
Usage: (find-ns-decls-in-jarfile jarfile)
+
+
DEPRECATED; moved to clojure.tools.namespace.find
+
+Searches the JAR file for Clojure source files containing (ns ...)
+declarations; returns the unevaluated ns declarations.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
find-ns-decls-on-classpath
+ function
+
Usage: (find-ns-decls-on-classpath)
+
+
DEPRECATED; use clojure.tools.namespace.find/find-ns-decls
+and clojure.java.classpath/classpath from
+http://github.com/clojure/java.classpath
+
+Searches CLASSPATH (both directories and JAR files) for Clojure
+source files containing (ns ...) declarations. Returns a sequence of
+the unevaluated ns declaration forms.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
ns-decl?
+ function
+
Usage: (ns-decl? form)
+
+
DEPRECATED; moved to clojure.tools.namespace.parse
+
+Returns true if form is a (ns ...) declaration.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
read-file-ns-decl
+ function
+
Usage: (read-file-ns-decl file)
+
+
DEPRECATED; moved to clojure.tools.namespace.file
+
+Attempts to read a (ns ...) declaration from file, and returns the
+unevaluated form. Returns nil if read fails, or if the first form
+is not a ns declaration.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
read-ns-decl
+ function
+
Usage: (read-ns-decl rdr)
+
+
DEPRECATED; moved to clojure.tools.namespace.parse
+
+Attempts to read a (ns ...) declaration from rdr, and returns the
+unevaluated form. Returns nil if read fails or if a ns declaration
+cannot be found. The ns declaration must be the first Clojure form
+in the file, except for (comment ...) forms.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
DEPRECATED; moved to clojure.tools.namespace.find
+
+Attempts to read a (ns ...) declaration from the named entry in the
+JAR file, and returns the unevaluated form. Returns nil if the read
+fails, or if the first form is not a ns declaration.
+
+ Added in tools.namespace version 0.1.0
+ Deprecated since tools.namespace version 0.2.1
+ Source
+
+
+
+
+
clojure.tools.namespace.dependency
+
Bidirectional graphs of dependencies and dependent objects.
Returns a comparator fn which produces a topological sort based on
+the dependencies in graph. Nodes not present in the graph will sort
+after nodes in the graph.
Track namespace dependencies and changes by monitoring
+file-modification timestamps
+
+
+
+
+
+
+
+
Public Variables and Functions
+
+
+
+
scan
+ function
+
Usage: (scan tracker & dirs)
+
+
DEPRECATED: replaced by scan-dirs.
+
+Scans directories for Clojure (.clj, .cljc) source files which have
+changed since the last time 'scan' was run; update the dependency
+tracker with new/changed/deleted files.
+
+If no dirs given, defaults to all directories on the classpath.
+
+ Added in tools.namespace version 0.2.0
+ Deprecated since tools.namespace version 0.3.0
+ Source
+
+
+
+
scan-all
+ function
+
Usage: (scan-all tracker & dirs)
+
+
DEPRECATED: replaced by scan-dirs.
+
+Scans directories for all Clojure source files and updates the
+dependency tracker to reload files. If no dirs given, defaults to
+all directories on the classpath.
+
+ Added in tools.namespace version 0.2.0
+ Deprecated since tools.namespace version 0.3.0
+ Source
+
Scans directories for files which have changed since the last time
+'scan-dirs' or 'scan-files' was run; updates the dependency tracker
+with new/changed/deleted files.
+
+dirs is the collection of directories to scan, defaults to all
+directories on Clojure's classpath.
+
+Optional third argument is map of options:
+
+ :platform Either clj (default) or cljs, both defined in
+ clojure.tools.namespace.find, controls file extensions
+ and reader options.
+
+ :add-all? If true, assumes all extant files are modified regardless
+ of filesystem timestamps.
+
+ Added in tools.namespace version 0.3.0
+
+ Source
+
Scans files to find those which have changed since the last time
+'scan-files' was run; updates the dependency tracker with
+new/changed/deleted files.
+
+files is the collection of files to scan.
+
+Optional third argument is map of options:
+
+ :platform Either clj (default) or cljs, both defined in
+ clojure.tools.namespace.find, controls reader options for
+ parsing files.
+
+ :add-all? If true, assumes all extant files are modified regardless
+ of filesystem timestamps.
+
+ Added in tools.namespace version 0.3.0
+
+ Source
+
Attempts to read a (ns ...) declaration from file, and returns the
+unevaluated form. Returns nil if ns declaration cannot be found.
+read-opts is passed through to tools.reader/read.
Search for namespace declarations in directories and JAR files.
+
+
+
+
+
+
+
+
Public Variables and Functions
+
+
+
+
clj
+ var
+
+
Platform definition of file extensions and reader options for
+Clojure (.clj and .cljc) source files.
+
+ Added in tools.namespace version 0.3.0
+
+ Source
+
+
+
+
cljs
+ var
+
+
Platform definition of file extensions and reader options for
+ClojureScript (.cljs and .cljc) source files.
+
+ Added in tools.namespace version 0.3.0
+
+ Source
+
+
+
+
clojure-sources-in-jar
+ function
+
Usage: (clojure-sources-in-jar jar-file)
+
+
DEPRECATED: replaced by sources-in-jar
+
+Returns a sequence of filenames ending in .clj or .cljc found in the
+JAR file.
+
+ Added in tools.namespace version 0.2.0
+ Deprecated since tools.namespace version 0.3.0
+ Source
+
+
+
+
find-clojure-sources-in-dir
+ function
+
Usage: (find-clojure-sources-in-dir dir)
+
+
DEPRECATED: replaced by find-sources-in-dir
+
+Searches recursively under dir for Clojure source files (.clj, .cljc).
+Returns a sequence of File objects, in breadth-first sort order.
+
+ Added in tools.namespace version 0.2.0
+ Deprecated since tools.namespace version 0.3.0
+ Source
+
Searches a sequence of java.io.File objects (both directories and
+JAR files) for platform source files containing (ns...)
+declarations. Returns a sequence of the symbol names of the declared
+namespaces. Use with clojure.java.classpath to search Clojure's
+classpath.
+
+Optional second argument platform is either clj (default) or cljs,
+both defined in clojure.tools.namespace.find.
Usage: (find-namespaces-in-dir dir)
+ (find-namespaces-in-dir dir platform)
+
+
Searches dir recursively for (ns ...) declarations in Clojure
+source files; returns the symbol names of the declared namespaces.
+
+Optional second argument platform is either clj (default) or cljs,
+both defined in clojure.tools.namespace.find.
+
+ Added in tools.namespace version 0.3.0
+
+ Source
+
Searches the JAR file for platform source files containing (ns ...)
+declarations. Returns a sequence of the symbol names of the
+declared namespaces.
+
+Optional second argument platform is either clj (default) or cljs,
+both defined in clojure.tools.namespace.find.
Searches a sequence of java.io.File objects (both directories and
+JAR files) for platform source files containing (ns...)
+declarations. Returns a sequence of the unevaluated ns declaration
+forms. Use with clojure.java.classpath to search Clojure's
+classpath.
+
+Optional second argument platform is either clj (default) or cljs,
+both defined in clojure.tools.namespace.find.
Usage: (find-ns-decls-in-dir dir)
+ (find-ns-decls-in-dir dir platform)
+
+
Searches dir recursively for (ns ...) declarations in Clojure
+source files; returns the unevaluated ns declarations.
+The symbol name in the returned ns declaration will contain metadata
+for the corresponding directory and located file within at keys
+:dir and :file.
+
+Optional second argument platform is either clj (default) or cljs,
+both defined in clojure.tools.namespace.find.
+
+ Added in tools.namespace version 0.2.0
+
+ Source
+
Searches the JAR file for source files containing (ns ...)
+declarations; returns the unevaluated ns declarations.
+
+Optional second argument platform is either clj (default) or cljs,
+both defined in clojure.tools.namespace.find.
Usage: (find-sources-in-dir dir)
+ (find-sources-in-dir dir platform)
+
+
Searches recursively under dir for source files. Returns a sequence
+of File objects, in breadth-first sort order.
+
+Optional second argument is either clj (default) or cljs, both
+defined in clojure.tools.namespace.find.
+
+ Added in tools.namespace version 0.3.0
+
+ Source
+
Attempts to read a (ns ...) declaration from the named entry in the
+JAR file, and returns the unevaluated form. Returns nil if read
+fails due to invalid syntax or if a ns declaration cannot be found.
+The symbol name in the returned ns declaration will contain metadata
+for the corresponding jar filename and located file within at keys
+:jar and :file.
+
+Optional third argument platform is either clj (default) or cljs,
+both defined in clojure.tools.namespace.find.
Returns a sequence of source file names found in the JAR file.
+
+Optional second argument platform is either clj (default) or cljs,
+both defined in clojure.tools.namespace.find.
+
+ Added in tools.namespace version 0.3.0
+
+ Source
+
+
+
+
+
clojure.tools.namespace.move
+
Refactoring tool to move a Clojure namespace from one name/file to
+another, and update all references to that namespace in your other
+Clojure source files.
+
+WARNING: This code is ALPHA and subject to change. It also modifies
+and deletes your source files! Make sure you have a backup or
+version control.
ALPHA: subject to change. Moves the .clj source file (found relative
+to source-path) for the namespace named old-sym to new-sym and
+replace all occurrences of the old name with the new name in all
+Clojure source files found in dirs.
+
+This is a purely textual transformation. It does not work on
+namespaces require'd or use'd from a prefix list.
+
+WARNING: This function modifies and deletes your source files! Make
+sure you have a backup or version control.
ALPHA: subject to change. Moves the .clj source file (found relative
+to source-path) for the namespace named old-sym to a file for a
+namespace named new-sym.
+
+WARNING: This function moves and deletes your source files! Make
+sure you have a backup or version control.
ALPHA: subject to change. Given Clojure source as a string, replaces
+all occurrences of the namespace name old-sym with new-sym and
+returns modified source as a string.
Given an (ns...) declaration form (unevaluated), returns a set of
+symbols naming the dependencies of that namespace. Handles :use and
+:require clauses but not :load.
Attempts to read a (ns ...) declaration from a reader, and returns
+the unevaluated form. Returns the first top-level ns form found.
+Returns nil if ns declaration cannot be found. Throws exception on
+invalid syntax.
+
+Note that read can execute code (controlled by
+tools.reader/*read-eval*), and as such should be used only with
+trusted sources. read-opts is passed through to tools.reader/read,
+defaults to clj-read-opts
Executes the next pending unload/reload operation in the dependency
+tracker. Returns the updated dependency tracker. If reloading caused
+an error, it is captured as ::error and the namespace which caused
+the error is ::error-ns.
Clears all state from the namespace/file tracker. This may help
+repair the namespace tracker when it gets into an inconsistent
+state, without restarting the Clojure process. The next call to
+'refresh' will reload all source files, but may not completely
+remove stale code from deleted files.
Adds metadata to namespace (or *ns* if unspecified) telling
+'refresh' not to load it. Implies disable-unload! also.
+
+Warning: Aliases to reloaded namespaces will break.
Adds metadata to namespace (or *ns* if unspecified) telling
+'refresh' not to unload it. The namespace may still be reloaded, it
+just won't be removed first.
+
+Warning: Aliases to reloaded namespaces will break.
Scans source code directories for files which have changed (since
+the last time this function was run) and reloads them in dependency
+order. Returns :ok or an error; sets the latest exception to
+clojure.core/*e (if *e is thread-bound).
+
+The directories to be scanned are controlled by 'set-refresh-dirs';
+defaults to all directories on the Java classpath.
+
+Options are key-value pairs. Valid options are:
+
+ :after Namespace-qualified symbol naming a zero-argument
+ function to be invoked after a successful refresh. This
+ symbol will be resolved *after* all namespaces have
+ been reloaded.
Scans source code directories for all Clojure source files and
+reloads them in dependency order.
+
+The directories to be scanned are controlled by 'set-refresh-dirs';
+defaults to all directories on the Java classpath.
+
+Options are key-value pairs. Valid options are:
+
+ :after Namespace-qualified symbol naming a zero-argument
+ function to be invoked after a successful refresh. This
+ symbol will be resolved *after* all namespaces have
+ been reloaded.
Reloads namespaces in dependency order. Does not scan directories again,
+expected to be used after 'scan'.
+
+Returns :ok or an error; sets the latest exception to
+clojure.core/*e (if *e is thread-bound).
+
+The directories to be scanned are controlled by 'set-refresh-dirs';
+defaults to all directories on the Java classpath.
+
+Options are key-value pairs. Valid options are:
+
+ :after Namespace-qualified symbol naming a zero-argument
+ function to be invoked after a successful refresh. This
+ symbol will be resolved *after* all namespaces have
+ been reloaded.
Scans directories for files which have changed since the last time
+'scan' or 'refresh' was run; updates the dependency tracker
+with new/changed/deleted files.
+
+Optional argument is map of options:
+
+ :platform Either clj (default) or cljs, both defined in
+ clojure.tools.namespace.find, controls file extensions
+ and reader options.
+
+ :add-all? If true, assumes all extant files are modified regardless
+ of filesystem timestamps.
+
+Returns map with keys:
+
+ ::track/unload list of namespace symbols that will be unloaded
+ ::track/load list of namespace symbols that will be loaded
Dependency tracker which can compute which namespaces need to be
+reloaded after files have changed. This is the low-level
+implementation that requires you to find the namespace dependencies
+yourself: most uses will interact with the wrappers in
+clojure.tools.namespace.file and clojure.tools.namespace.dir or the
+public API in clojure.tools.namespace.repl.
+
+
+
+
+
+
+
+
Public Variables and Functions
+
+
+
+
add
+ function
+
Usage: (add tracker depmap)
+
+
Returns an updated dependency tracker with new/updated namespaces.
+
+Depmap is a map describing the new or modified namespaces. Keys in
+the map are namespace names (symbols). Values in the map are sets of
+symbols naming the direct dependencies of each namespace. For
+example, assuming these ns declarations:
+
+ (ns alpha (:require beta))
+ (ns beta (:require gamma delta))
+
+the depmap would look like this:
+
+ {alpha #{beta}
+ beta #{gamma delta}}
+
+After adding new/updated namespaces, the dependency tracker will
+have two lists associated with the following keys:
+
+ :clojure.tools.namespace.track/unload
+ is the list of namespaces that need to be removed
+
+ :clojure.tools.namespace.track/load
+ is the list of namespaces that need to be reloaded
+
+To reload namespaces in the correct order, first remove/unload all
+namespaces in the 'unload' list, then (re)load all namespaces in the
+'load' list. The clojure.tools.namespace.reload namespace has
+functions to do this.
Returns an updated dependency tracker from which the namespaces
+(symbols) have been removed. The ::unload and ::load lists are
+populated as with 'add'.
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.