Skip to content
Find file
Fetching contributors…
Cannot retrieve contributors at this time
523 lines (452 sloc) 25.3 KB
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>clojure.zip - Clojure v1.8 API documentation</title>
<link rel="icon" href="static/favicon.png" />
<link rel="shortcut icon" href="static/favicon.png" />
<link rel="stylesheet" href="static/clojure.css" type="text/css" media="all" />
<link rel="stylesheet" href="static/wiki.css" type="text/css" media="all" />
<link rel="stylesheet" href="static/internal.css" type="text/css" media="all" />
<style>.menuWrapper{height: 36px;}</style>
</head>
<!--
This document was auto-generated from the source by the clojure autodoc system.
To report errors or ask questions about the overall documentation structure, formatting,
etc., contact Tom Faulhaber (google mail name: tomfaulhaber).
For errors in the documentation of a particular namespace, contact the author of that
namespace.
-->
<body>
<div id="AllContentContainer">
<div id="Header">
<a href="index.html" id="Logo"><img src="static/clojure-icon.gif" width="100" height="100" alt="Clojure" /></a>
<h1><a href="index.html" id="page-header" title="page header title">Clojure Core API Reference</a></h1>
</div>
<div id="leftcolumn"><div style="text-align: center;"></div>
<div class="menu">
<div class="WikiCustomNav WikiElement wiki">
<span class="toc-header"><span id="project-name">Clojure</span> <span id="version">v1.8</span> API</span><br />
<ul>
<li><a href="index.html" class="wiki_link">Overview</a></li>
<li><a href="api-index.html" class="wiki_link">API Index</a></li>
</ul>
<div class="NamespaceTOC">
<span class="toc-header">Namespaces</span>
<ul id="left-sidebar-list">
<li><a class="wiki_link" href="clojure.core-api.html">clojure.core</a></li><li><a class="wiki_link" href="clojure.data-api.html">clojure.data</a></li><li><a class="wiki_link" href="clojure.edn-api.html">clojure.edn</a></li><li><a class="wiki_link" href="clojure.inspector-api.html">clojure.inspector</a></li><li><a class="wiki_link" href="clojure.instant-api.html">clojure.instant</a></li><li><a class="wiki_link" href="clojure.java.browse-api.html">clojure.java.browse</a></li><li><a class="wiki_link" href="clojure.java.io-api.html">clojure.java.io</a></li><li><a class="wiki_link" href="clojure.java.javadoc-api.html">clojure.java.javadoc</a></li><li><a class="wiki_link" href="clojure.java.shell-api.html">clojure.java.shell</a></li><li><a class="wiki_link" href="clojure.main-api.html">clojure.main</a></li><li><a class="wiki_link" href="clojure.pprint-api.html">clojure.pprint</a></li><li><a class="wiki_link" href="clojure.reflect-api.html">clojure.reflect</a></li><li><a class="wiki_link" href="clojure.repl-api.html">clojure.repl</a></li><li><a class="wiki_link" href="clojure.set-api.html">clojure.set</a></li><li><a class="wiki_link" href="clojure.stacktrace-api.html">clojure.stacktrace</a></li><li><a class="wiki_link" href="clojure.string-api.html">clojure.string</a></li><li><a class="wiki_link" href="clojure.template-api.html">clojure.template</a></li><li><a class="wiki_link" href="clojure.test-api.html">clojure.test</a></li><li><a class="wiki_link" href="clojure.walk-api.html">clojure.walk</a></li><li><a class="wiki_link" href="clojure.xml-api.html">clojure.xml</a></li><li><a class="wiki_link" href="clojure.zip-api.html">clojure.zip</a></li>
</ul>
</div>
<div class="BranchTOC">
<span class="toc-header">Other Versions</span>
<ul id="left-sidebar-branch-list">
<li><a class="wiki_link" href="branch-master/index.html">v1.9 (in development)</a></li><li><a class="wiki_link" href="branch-clojure-1.7.0/index.html">v1.7 (stable)</a></li><li><a class="wiki_link" href="branch-clojure-1.6.0/index.html">v1.6 (stable)</a></li><li><a class="wiki_link" href="branch-clojure-1.5.0/index.html">v1.5 (legacy)</a></li><li><a class="wiki_link" href="branch-clojure-1.4.0/index.html">v1.4 (legacy)</a></li><li><a class="wiki_link" href="branch-1.3.x/index.html">v1.3 (legacy)</a></li><li><a class="wiki_link" href="branch-1.2.x/index.html">v1.2 (legacy)</a></li><li><a class="wiki_link" href="branch-1.1.x/index.html">v1.1 (legacy)</a></li>
</ul>
</div>
<a class="wiki_link" href="http://clojure.org">Clojure Home</a>
</div>
</div>
</div>
<div id="rightcolumn">
<div id="Content">
<div class="contentBox"><div class="innerContentBox">
<div class="wiki wikiPage" id="content_view">
<div id="right-sidebar"><div id="toc">
<h1 class="nopad">Table of Contents</h1>
<div class="toc-section" style="margin-left: 1em;">
<a style="margin-top: 3px;" href="#toc0">Overview</a>
</div><div class="toc-section" style="margin-left: 1em;">
<a style="margin-top: 3px;" href="#"></a>
</div><div class="toc-section" style="margin-left: 1em;">
<a style="margin-top: 3px;" href="#"></a>
</div><div class="toc-section" style="margin-left: 1em;">
<a style="margin-top: 3px;" href="#var-section">Vars and Functions</a>
<div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/append-child" class="toc-entry-anchor">append-child</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/branch?" class="toc-entry-anchor">branch?</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/children" class="toc-entry-anchor">children</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/down" class="toc-entry-anchor">down</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/edit" class="toc-entry-anchor">edit</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/end?" class="toc-entry-anchor">end?</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/insert-child" class="toc-entry-anchor">insert-child</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/insert-left" class="toc-entry-anchor">insert-left</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/insert-right" class="toc-entry-anchor">insert-right</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/left" class="toc-entry-anchor">left</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/leftmost" class="toc-entry-anchor">leftmost</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/lefts" class="toc-entry-anchor">lefts</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/make-node" class="toc-entry-anchor">make-node</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/next" class="toc-entry-anchor">next</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/node" class="toc-entry-anchor">node</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/path" class="toc-entry-anchor">path</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/prev" class="toc-entry-anchor">prev</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/remove" class="toc-entry-anchor">remove</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/replace" class="toc-entry-anchor">replace</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/right" class="toc-entry-anchor">right</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/rightmost" class="toc-entry-anchor">rightmost</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/rights" class="toc-entry-anchor">rights</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/root" class="toc-entry-anchor">root</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/seq-zip" class="toc-entry-anchor">seq-zip</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/up" class="toc-entry-anchor">up</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/vector-zip" class="toc-entry-anchor">vector-zip</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/xml-zip" class="toc-entry-anchor">xml-zip</a>
</div><div class="toc-entry" style="margin-left: 1em;">
<a href="#clojure.zip/zipper" class="toc-entry-anchor">zipper</a>
</div>
</div>
</div>
</div>
<div id="content-tag"><h1 id="overview">API for <span id="clojure.zip">clojure.zip</span>
- <span id="header-project">Clojure</span> <span id="header-version">v1.8</span><span id="header-status-block"> (<span id="header-status">stable</span>)</span>
</h1>
<span id="author-line">by <span id="author-name">Rich Hickey</span><br /></span>
<br />Full namespace name: <span id="long-name">clojure.zip</span>
<p></p>
<h2>Overview</h2>
<pre id="namespace-docstr">Functional hierarchical zipper, with navigation, editing,
and enumeration. See Huet</pre>
<br />
<div id="var-section">
<p></p>
<h2>Public Variables and Functions</h2>
<div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/append-child">append-child</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (append-child loc item)
</pre>
<pre id="var-docstr">Inserts the item as the rightmost child of the node at this loc,
without moving</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L223">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/branch?">branch?</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (branch? loc)
</pre>
<pre id="var-docstr">Returns true if the node at loc is a branch</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L69">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/children">children</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (children loc)
</pre>
<pre id="var-docstr">Returns a seq of the children of node at loc, which must be a branch</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L75">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/down">down</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (down loc)
</pre>
<pre id="var-docstr">Returns the loc of the leftmost child of the node at this loc, or
nil if no children</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L109">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/edit">edit</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (edit loc f &amp; args)
</pre>
<pre id="var-docstr">Replaces the node at this loc with the value of (f node args)</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L210">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/end?">end?</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (end? loc)
</pre>
<pre id="var-docstr">Returns true if loc represents the end of a depth-first walk</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L258">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/insert-child">insert-child</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (insert-child loc item)
</pre>
<pre id="var-docstr">Inserts the item as the leftmost child of the node at this loc,
without moving</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L216">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/insert-left">insert-left</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (insert-left loc item)
</pre>
<pre id="var-docstr">Inserts the item as the left sibling of the node at this loc,
without moving</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L183">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/insert-right">insert-right</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (insert-right loc item)
</pre>
<pre id="var-docstr">Inserts the item as the right sibling of the node at this loc,
without moving</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L193">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/left">left</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (left loc)
</pre>
<pre id="var-docstr">Returns the loc of the left sibling of the node at this loc, or nil</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L166">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/leftmost">leftmost</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (leftmost loc)
</pre>
<pre id="var-docstr">Returns the loc of the leftmost sibling of the node at this loc, or self</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L174">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/lefts">lefts</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (lefts loc)
</pre>
<pre id="var-docstr">Returns a seq of the left siblings of this loc</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L96">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/make-node">make-node</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (make-node loc node children)
</pre>
<pre id="var-docstr">Returns a new branch node, given an existing node and new
children. The loc is only used to supply the constructor.</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L83">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/next">next</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (next loc)
</pre>
<pre id="var-docstr">Moves to the next loc in the hierarchy, depth-first. When reaching
the end, returns a distinguished loc detectable via end?. If already
at the end, stays there.</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L230">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/node">node</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (node loc)
</pre>
<pre id="var-docstr">Returns the node at loc</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L64">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/path">path</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (path loc)
</pre>
<pre id="var-docstr">Returns a seq of nodes leading to this loc</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L90">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/prev">prev</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (prev loc)
</pre>
<pre id="var-docstr">Moves to the previous loc in the hierarchy, depth-first. If already
at the root, returns nil.</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L246">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/remove">remove</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (remove loc)
</pre>
<pre id="var-docstr">Removes the node at loc, returning the loc that would have preceded
it in a depth-first walk.</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L264">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/replace">replace</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (replace loc node)
</pre>
<pre id="var-docstr">Replaces the node at this loc, without moving</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L203">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/right">right</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (right loc)
</pre>
<pre id="var-docstr">Returns the loc of the right sibling of the node at this loc, or nil</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L149">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/rightmost">rightmost</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (rightmost loc)
</pre>
<pre id="var-docstr">Returns the loc of the rightmost sibling of the node at this loc, or self</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L157">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/rights">rights</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (rights loc)
</pre>
<pre id="var-docstr">Returns a seq of the right siblings of this loc</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L102">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/root">root</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (root loc)
</pre>
<pre id="var-docstr">zips all the way up and returns the root node, reflecting any
changes.</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L137">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/seq-zip">seq-zip</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (seq-zip root)
</pre>
<pre id="var-docstr">Returns a zipper for nested sequences, given a root sequence</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L35">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/up">up</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (up loc)
</pre>
<pre id="var-docstr">Returns the loc of the parent of the node at this loc, or nil if at
the top</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L123">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/vector-zip">vector-zip</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (vector-zip root)
</pre>
<pre id="var-docstr">Returns a zipper for nested vectors, given a root vector</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L44">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/xml-zip">xml-zip</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (xml-zip root)
</pre>
<pre id="var-docstr">Returns a zipper for xml elements (as from xml/parse),
given a root element</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L53">Source</a>
</div><div id="var-entry">
<br />
<hr />
<h2 id="clojure.zip/zipper">zipper</h2>
<span id="var-type">function</span><br />
<pre id="var-usage">Usage: (zipper branch? children make-node root)
</pre>
<pre id="var-docstr">Creates a new zipper structure.
branch? is a fn that, given a node, returns true if can have
children, even if it currently doesn't.
children is a fn that, given a branch node, returns a seq of its
children.
make-node is a fn that, given an existing node and a seq of
children, returns a new branch node with the supplied children.
root is the root node.</pre>
<span class="var-added"><span id="content">Added in Clojure version 1.0</span><br /></span>
<a id="var-source" href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L18">Source</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="foot">
<div id="copyright" style="text-align: center;">Copyright 2007-2016 by Rich Hickey</div>
</div>
</div>
<div id="DesignedBy">Logo &amp; site design by <a href="http://www.tomhickey.com" title="Visit Tom Hickey's website.">Tom Hickey</a>.<br />
Clojure auto-documentation system by Tom Faulhaber.</div>
</div>
<!-- /AllContentContainer -->
</body>
</html>
Jump to Line
Something went wrong with that request. Please try again.