-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
93 lines (88 loc) · 3.21 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<!DOCTYPE html>
<html>
<head>
<title>README</title>
<link href='https://fonts.googleapis.com/css?family=Open+Sans' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="/css/site.css">
</head>
<body>
<header>
<a href="http://library.caltech.edu" title="link to Caltech Library Homepage"><img src="/assets/liblogo.gif" alt="Caltech Library logo"></a>
</header>
<nav>
<ul>
<li><a href="/">Home</a></li>
<li><a href="README.html">README</a></li>
<li><a href="LICENSE">LICENSE</a></li>
<li><a href="install.html">INSTALL</a></li>
<li><a href="user_manual.html">User Manual</a></li>
<li><a href="search.html">Search Docs</a></li>
<li><a href="about.html">About</a></li>
<li><a href="https://github.com/caltechlibrary/pairtree">GitHub</a></li>
</ul>
</nav>
<section>
<h1 id="pairtree">Pairtree</h1>
<p>This is a library for translate a UTF-8 string to/from a pairtree
notation. This is typically used in storing things on disc
(e.g. repository filesystems). This code is based on the specification
found at
https://confluence.ucop.edu/download/attachments/14254128/PairtreeSpec.pdf?version=2&modificationDate=1295552323000&api=v2
which is cited on the <a
href="https://github.com/OCFL/spec/wiki">OCFL</a> wiki.</p>
<h2 id="features">Features</h2>
<ul>
<li><code>Set()</code> will let you set the path separator
<ul>
<li><code>Separator</code> is a readonly value of the file separator
used by <code>Encode()</code> and <code>Decode()</code></li>
</ul></li>
<li><code>Encode()</code> will encode the provided string as a pairtree
path</li>
<li><code>Decode()</code> will decode a pairtree path returning the
unencoded string</li>
</ul>
<h2 id="example">Example</h2>
<pre><code> import (
"fmt"
"os"
"github.com/caltechlibrary/pairtree"
)
func main() {
key := "12mIEERD11"
fmt.Printf("Key: %q\n", key)
pairPath := pairtree.Encode(key)
fmt.Printf("Endoded key %q -> %q\n", key, pairPath)
key = Decode(pairPath)
fmt.Printf("Decoded path %q -> %q\n", pairPath, key)
}</code></pre>
</section>
<footer>
<span>© 2021 <a href="https://www.library.caltech.edu/copyright">Caltech Library</a></span>
<address>1200 E California Blvd, Mail Code 1-32, Pasadena, CA 91125-3200</address>
<span><a href="mailto:library@caltech.edu">Email Us</a></span>
<span>Phone: <a href="tel:+1-626-395-3405">(626)395-3405</a></span>
</footer>
<!-- START: PrettyFi from https://github.com/google/code-prettify -->
<script>
/* We want to add the class "prettyprint" to all the pre elements */
var pre_list = document.querySelectorAll("pre");
pre_list.forEach(function(elem) {
elem.classList.add("prettyprint");
elem.classList.add("linenums");/**/
elem.classList.add("json"); /**/
});
</script>
<style>
li.L0, li.L1, li.L2, li.L3, li.L4, li.L5, li.L6, li.L7, li.L8, li.L9
{
color: #555;
list-style-type: decimal;
}
</style>
<link rel="stylesheet" type="text/css" href="/css/prettify.css">
<script src="https://cdn.jsdelivr.net/gh/google/code-prettify@master/loader/run_
prettify.js"></script>
<!-- END: PrettyFi from https://github.com/google/code-prettify -->
</body>
</html>