Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
branch: gh-pages
Fetching contributors…

Cannot retrieve contributors at this time

523 lines (452 sloc) 25.799 kB
<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>clojure.zip - Clojure v1.7 API documentation</title>
<link href="static/favicon.png" rel="icon" />
<link href="static/favicon.png" rel="shortcut icon" />
<link media="all" type="text/css" href="static/clojure.css" rel="stylesheet" />
<link media="all" type="text/css" href="static/wiki.css" rel="stylesheet" />
<link media="all" type="text/css" href="static/internal.css" rel="stylesheet" />
<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 id="Logo" href="index.html"><img alt="Clojure" height="100" width="100" src="static/clojure-icon.gif" /></a>
<h1><a title="page header title" id="page-header" href="index.html">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.7</span> API</span><br />
<ul>
<li><a class="wiki_link" href="index.html">Overview</a></li>
<li><a class="wiki_link" href="api-index.html">API Index</a></li>
</ul>
<div class="NamespaceTOC">
<span class="toc-header">Namespaces</span>
<ul id="left-sidebar-list">
<li><a href="clojure.core-api.html" class="wiki_link">clojure.core</a></li><li><a href="clojure.data-api.html" class="wiki_link">clojure.data</a></li><li><a href="clojure.edn-api.html" class="wiki_link">clojure.edn</a></li><li><a href="clojure.inspector-api.html" class="wiki_link">clojure.inspector</a></li><li><a href="clojure.instant-api.html" class="wiki_link">clojure.instant</a></li><li><a href="clojure.java.browse-api.html" class="wiki_link">clojure.java.browse</a></li><li><a href="clojure.java.io-api.html" class="wiki_link">clojure.java.io</a></li><li><a href="clojure.java.javadoc-api.html" class="wiki_link">clojure.java.javadoc</a></li><li><a href="clojure.java.shell-api.html" class="wiki_link">clojure.java.shell</a></li><li><a href="clojure.main-api.html" class="wiki_link">clojure.main</a></li><li><a href="clojure.pprint-api.html" class="wiki_link">clojure.pprint</a></li><li><a href="clojure.reflect-api.html" class="wiki_link">clojure.reflect</a></li><li><a href="clojure.repl-api.html" class="wiki_link">clojure.repl</a></li><li><a href="clojure.set-api.html" class="wiki_link">clojure.set</a></li><li><a href="clojure.stacktrace-api.html" class="wiki_link">clojure.stacktrace</a></li><li><a href="clojure.string-api.html" class="wiki_link">clojure.string</a></li><li><a href="clojure.template-api.html" class="wiki_link">clojure.template</a></li><li><a href="clojure.test-api.html" class="wiki_link">clojure.test</a></li><li><a href="clojure.walk-api.html" class="wiki_link">clojure.walk</a></li><li><a href="clojure.xml-api.html" class="wiki_link">clojure.xml</a></li><li><a href="clojure.zip-api.html" class="wiki_link">clojure.zip</a></li>
</ul>
</div>
<div class="BranchTOC">
<span class="toc-header">Other Versions</span>
<ul id="left-sidebar-branch-list">
<li><a href="branch-master/index.html" class="wiki_link">v1.8 (in development)</a></li><li><a href="branch-clojure-1.6.0/index.html" class="wiki_link">v1.6 (stable)</a></li><li><a href="branch-clojure-1.5.0/index.html" class="wiki_link">v1.5 (legacy)</a></li><li><a href="branch-clojure-1.4.0/index.html" class="wiki_link">v1.4 (legacy)</a></li><li><a href="branch-1.3.x/index.html" class="wiki_link">v1.3 (legacy)</a></li><li><a href="branch-1.2.x/index.html" class="wiki_link">v1.2 (legacy)</a></li><li><a href="branch-1.1.x/index.html" class="wiki_link">v1.1 (legacy)</a></li>
</ul>
</div>
<a href="http://clojure.org" class="wiki_link">Clojure Home</a>
</div>
</div>
</div>
<div id="rightcolumn">
<div id="Content">
<div class="contentBox"><div class="innerContentBox">
<div id="content_view" class="wiki wikiPage">
<div id="right-sidebar"><div id="toc">
<h1 class="nopad">Table of Contents</h1>
<div style="margin-left: 1em;" class="toc-section">
<a href="#toc0" style="margin-top: 3px;">Overview</a>
</div><div style="margin-left: 1em;" class="toc-section">
<a href="#" style="margin-top: 3px;"></a>
</div><div style="margin-left: 1em;" class="toc-section">
<a href="#" style="margin-top: 3px;"></a>
</div><div style="margin-left: 1em;" class="toc-section">
<a href="#var-section" style="margin-top: 3px;">Vars and Functions</a>
<div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/append-child">append-child</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/branch?">branch?</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/children">children</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/down">down</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/edit">edit</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/end?">end?</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/insert-child">insert-child</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/insert-left">insert-left</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/insert-right">insert-right</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/left">left</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/leftmost">leftmost</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/lefts">lefts</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/make-node">make-node</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/next">next</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/node">node</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/path">path</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/prev">prev</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/remove">remove</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/replace">replace</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/right">right</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/rightmost">rightmost</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/rights">rights</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/root">root</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/seq-zip">seq-zip</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/up">up</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/vector-zip">vector-zip</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/xml-zip">xml-zip</a>
</div><div style="margin-left: 1em;" class="toc-entry">
<a class="toc-entry-anchor" href="#clojure.zip/zipper">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.7</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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L223" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L69" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L75" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L109" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L210" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L258" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L216" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L183" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L193" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L166" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L174" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L96" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L83" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L230" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L64" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L90" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L246" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L264" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L203" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L149" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L157" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L102" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L137" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L35" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L123" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L44" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L53" id="var-source">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 href="https://github.com/clojure/clojure/blob/59b65669860a1f33825775494809e5d500c19c63/src/clj/clojure/zip.clj#L18" id="var-source">Source</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="foot">
<div style="text-align: center;" id="copyright">Copyright 2007-2015 by Rich Hickey</div>
</div>
</div>
<div id="DesignedBy">Logo &amp; site design by <a title="Visit Tom Hickey's website." href="http://www.tomhickey.com">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.