This file is indexed.

/usr/share/doc/augeas-doc/lenses/files/build-aug.html is in augeas-doc 0.10.0-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  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
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">

<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Build - Augeas Documentation</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/prettify.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>

<!--  Generated by Natural Docs, version 1.51 -->
<!--  http://www.naturaldocs.org  -->

<!-- saved from url=(0026)http://www.naturaldocs.org -->




<div id=Content><div class="CAugeasModule"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Build"></a>Build</h1><div class=CBody><p>Generic functions to build lenses</p><p>Author: Raphael Pinson <a href="#" onClick="location.href='mai' + 'lto:' + 'rap' + 'hink' + '@' + 'gmai' + 'l.com'; return false;" class=LEMail>rap<span style="display: none">.nosp@m.</span>hink<span>@</span>gmai<span style="display: none">.nosp@m.</span>l.com</a></p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Build" >Build</a></td><td class=SDescription>Generic functions to build lenses</td></tr><tr class="SGeneric SIndent1 SMarked"><td class=SEntry><a href="#Build.License" >License</a></td><td class=SDescription>This file is licensed under the LGPLv2+, like the rest of Augeas.</td></tr><tr class="SGeneric SIndent1"><td class=SEntry><a href="#Build.Reference" >Reference</a></td><td class=SDescription>This file provides generic functions to build Augeas lenses</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Build.GENERIC_CONSTRUCTIONS" >GENERIC CONSTRUCTIONS</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Build.brackets" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">brackets</a></td><td class=SDescription>Put a lens inside brackets</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Build.LIST_CONSTRUCTIONS" >LIST CONSTRUCTIONS</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Build.list" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">list</a></td><td class=SDescription>Build a list of identical lenses separated with a given separator (at least 2 elements)</td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Build.opt_list" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">opt_list</a></td><td class=SDescription>Same as <a href="#Build.list" class=LAugeasLens id=link4 onMouseOver="ShowTip(event, 'tt2', 'link4')" onMouseOut="HideTip('tt2')">list</a>, but there might be only one element in the list</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Build.LABEL_OPERATIONS" >LABEL OPERATIONS</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Build.xchg" id=link5 onMouseOver="ShowTip(event, 'tt4', 'link5')" onMouseOut="HideTip('tt4')">xchg</a></td><td class=SDescription>Replace a pattern with a different label in the tree, thus emulating a key but allowing to replace the keyword with a different value than matched</td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Build.xchgs" id=link6 onMouseOver="ShowTip(event, 'tt5', 'link6')" onMouseOut="HideTip('tt5')">xchgs</a></td><td class=SDescription>Same as <a href="#Build.xchg" class=LAugeasLens id=link7 onMouseOver="ShowTip(event, 'tt4', 'link7')" onMouseOut="HideTip('tt4')">xchg</a>, but the pattern is the default string</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Build.SUBNODE_CONSTRUCTIONS" >SUBNODE CONSTRUCTIONS</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Build.key_value_line" id=link8 onMouseOver="ShowTip(event, 'tt6', 'link8')" onMouseOut="HideTip('tt6')">key_value_line</a></td><td class=SDescription>A subnode with a keyword, a separator and a storing lens, and an end of line</td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Build.key_value_line_comment" id=link9 onMouseOver="ShowTip(event, 'tt7', 'link9')" onMouseOut="HideTip('tt7')">key_value_line_comment</a></td><td class=SDescription>Same as <a href="#Build.key_value_line" class=LAugeasLens id=link10 onMouseOver="ShowTip(event, 'tt6', 'link10')" onMouseOut="HideTip('tt6')">key_value_line</a>, but allows to have a comment in the end of a line and an end of line</td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Build.key_value" id=link11 onMouseOver="ShowTip(event, 'tt8', 'link11')" onMouseOut="HideTip('tt8')">key_value</a></td><td class=SDescription>Same as <a href="#Build.key_value_line" class=LAugeasLens id=link12 onMouseOver="ShowTip(event, 'tt6', 'link12')" onMouseOut="HideTip('tt6')">key_value_line</a>, but does not end with an end of line</td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Build.key_ws_value" id=link13 onMouseOver="ShowTip(event, 'tt9', 'link13')" onMouseOut="HideTip('tt9')">key_ws_value</a></td><td class=SDescription>Store a key/value pair where key and value are separated by whitespace and the value goes to the end of the line. </td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Build.flag" id=link14 onMouseOver="ShowTip(event, 'tt10', 'link14')" onMouseOut="HideTip('tt10')">flag</a></td><td class=SDescription>A simple flag subnode, consisting of a single key</td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Build.flag_line" id=link15 onMouseOver="ShowTip(event, 'tt11', 'link15')" onMouseOut="HideTip('tt11')">flag_line</a></td><td class=SDescription>A simple flag line, consisting of a single key</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>

<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Build.License"></a>License</h3><div class=CBody><p>This file is licensed under the LGPLv2+, like the rest of Augeas.</p></div></div></div>

<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Build.Reference"></a>Reference</h3><div class=CBody><p>This file provides generic functions to build Augeas lenses</p></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Build.GENERIC_CONSTRUCTIONS"></a>GENERIC CONSTRUCTIONS</h3></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Build.brackets"></a>brackets</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let brackets (l:lens) (r:lens) (lns:lens) = l . lns . r

</td></tr></table></blockquote><p>Put a lens inside brackets</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>l:lens</td><td class=CDLDescription>the left bracket lens</td></tr><tr><td class=CDLEntry>r: lens</td><td class=CDLDescription>the right bracket lens</td></tr><tr><td class=CDLEntry>lns:lens</td><td class=CDLDescription>the lens to put inside brackets</td></tr></table></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Build.LIST_CONSTRUCTIONS"></a>LIST CONSTRUCTIONS</h3></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Build.list"></a>list</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let list (lns:lens) (sep:lens) = lns . ( sep . lns )+

</td></tr></table></blockquote><p>Build a list of identical lenses separated with a given separator (at least 2 elements)</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>lns:lens</td><td class=CDLDescription>the lens to repeat in the list</td></tr><tr><td class=CDLEntry>sep:lens</td><td class=CDLDescription>the separator lens, which can be taken from the <a href="sep-aug.html#Sep" class=LAugeasModule id=link16 onMouseOver="ShowTip(event, 'tt12', 'link16')" onMouseOut="HideTip('tt12')">Sep</a> module</td></tr></table></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Build.opt_list"></a>opt_list</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let opt_list (lns:lens) (sep:lens) = lns . ( sep . lns )*

</td></tr></table></blockquote><p>Same as <a href="#Build.list" class=LAugeasLens id=link17 onMouseOver="ShowTip(event, 'tt2', 'link17')" onMouseOut="HideTip('tt2')">list</a>, but there might be only one element in the list</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>lns:lens</td><td class=CDLDescription>the lens to repeat in the list</td></tr><tr><td class=CDLEntry>sep:lens</td><td class=CDLDescription>the separator lens, which can be taken from the <a href="sep-aug.html#Sep" class=LAugeasModule id=link18 onMouseOver="ShowTip(event, 'tt12', 'link18')" onMouseOut="HideTip('tt12')">Sep</a> module</td></tr></table></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Build.LABEL_OPERATIONS"></a>LABEL OPERATIONS</h3></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Build.xchg"></a>xchg</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let xchg (m:regexp) (d:string) (l:string) = del m d . label l
</td></tr></table></blockquote><p>Replace a pattern with a different label in the tree, thus emulating a key but allowing to replace the keyword with a different value than matched</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>m:regexp</td><td class=CDLDescription>the pattern to match</td></tr><tr><td class=CDLEntry>d:string</td><td class=CDLDescription>the default value when a node in created</td></tr><tr><td class=CDLEntry>l:string</td><td class=CDLDescription>the label to apply for such nodes</td></tr></table></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Build.xchgs"></a>xchgs</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let xchgs (m:string) (l:string) = xchg m m l

</td></tr></table></blockquote><p>Same as <a href="#Build.xchg" class=LAugeasLens id=link19 onMouseOver="ShowTip(event, 'tt4', 'link19')" onMouseOut="HideTip('tt4')">xchg</a>, but the pattern is the default string</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>m:string</td><td class=CDLDescription>the string to replace, also used as default</td></tr><tr><td class=CDLEntry>l:string</td><td class=CDLDescription>the label to apply for such nodes</td></tr></table></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Build.SUBNODE_CONSTRUCTIONS"></a>SUBNODE CONSTRUCTIONS</h3></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Build.key_value_line"></a>key_value_line</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let key_value_line (kw:regexp) (sep:lens) (sto:lens) =
                                   [ key kw . sep . sto . eol ]
</td></tr></table></blockquote><p>A subnode with a keyword, a separator and a storing lens, and an end of line</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>kw:regexp</td><td class=CDLDescription>the pattern to match as key</td></tr><tr><td class=CDLEntry>sep:lens</td><td class=CDLDescription>the separator lens, which can be taken from the <a href="sep-aug.html#Sep" class=LAugeasModule id=link20 onMouseOver="ShowTip(event, 'tt12', 'link20')" onMouseOut="HideTip('tt12')">Sep</a> module</td></tr><tr><td class=CDLEntry>sto:lens</td><td class=CDLDescription>the storing lens</td></tr></table></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Build.key_value_line_comment"></a>key_value_line_comment</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let key_value_line_comment (kw:regexp) (sep:lens) (sto:lens) (comment:lens) =
                                   [ key kw . sep . sto . (eol|comment) ]
</td></tr></table></blockquote><p>Same as <a href="#Build.key_value_line" class=LAugeasLens id=link21 onMouseOver="ShowTip(event, 'tt6', 'link21')" onMouseOut="HideTip('tt6')">key_value_line</a>, but allows to have a comment in the end of a line and an end of line</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>kw:regexp</td><td class=CDLDescription>the pattern to match as key</td></tr><tr><td class=CDLEntry>sep:lens</td><td class=CDLDescription>the separator lens, which can be taken from the <a href="sep-aug.html#Sep" class=LAugeasModule id=link22 onMouseOver="ShowTip(event, 'tt12', 'link22')" onMouseOut="HideTip('tt12')">Sep</a> module</td></tr><tr><td class=CDLEntry>sto:lens</td><td class=CDLDescription>the storing lens</td></tr><tr><td class=CDLEntry>comment:lens</td><td class=CDLDescription>the comment lens, which can be taken from <a href="util-aug.html#Util" class=LAugeasModule id=link23 onMouseOver="ShowTip(event, 'tt13', 'link23')" onMouseOut="HideTip('tt13')">Util</a></td></tr></table></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Build.key_value"></a>key_value</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let key_value (kw: regexp) (sep:lens) (sto:lens) =
                                   [ key kw . sep . sto ]
</td></tr></table></blockquote><p>Same as <a href="#Build.key_value_line" class=LAugeasLens id=link24 onMouseOver="ShowTip(event, 'tt6', 'link24')" onMouseOut="HideTip('tt6')">key_value_line</a>, but does not end with an end of line</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>kw:regexp</td><td class=CDLDescription>the pattern to match as key</td></tr><tr><td class=CDLEntry>sep:lens</td><td class=CDLDescription>the separator lens, which can be taken from the <a href="sep-aug.html#Sep" class=LAugeasModule id=link25 onMouseOver="ShowTip(event, 'tt12', 'link25')" onMouseOut="HideTip('tt12')">Sep</a> module</td></tr><tr><td class=CDLEntry>sto:lens</td><td class=CDLDescription>the storing lens</td></tr></table></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Build.key_ws_value"></a>key_ws_value</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let key_ws_value (kw:regexp) =
  key_value_line kw Util.del_ws_spc (store Rx.space_in)
</td></tr></table></blockquote><p>Store a key/value pair where key and value are separated by whitespace and the value goes to the end of the line.&nbsp; Leading and trailing whitespace is stripped from the value.&nbsp; The end of line is consumed by this lens</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>kw:regexp</td><td class=CDLDescription>the pattern to match as key</td></tr></table></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Build.flag"></a>flag</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let flag (kw:regexp) = [ key kw ]
</td></tr></table></blockquote><p>A simple flag subnode, consisting of a single key</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>kw:regexp</td><td class=CDLDescription>the pattern to match as key</td></tr></table></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Build.flag_line"></a>flag_line</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let flag_line (kw:regexp) = [ key kw . eol ]
</td></tr></table></blockquote><p>A simple flag line, consisting of a single key</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>kw:regexp</td><td class=CDLDescription>the pattern to match as key</td></tr></table></div></div></div>

</div><!--Content-->


<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->


<div id=Menu><div class=MTitle>Augeas Documentation<div class=MSubTitle>Modules</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Main Site</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MLink><a href="/index.html">Main</a></div></div><div class=MEntry><div class=MLink><a href="/docs/index.html">Documentation</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Specific Modules</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="access-aug.html">Access</a></div></div><div class=MEntry><div class=MFile><a href="aliases-aug.html">Aliases</a></div></div><div class=MEntry><div class=MFile><a href="approx-aug.html">Approx</a></div></div><div class=MEntry><div class=MFile><a href="aptconf-aug.html">AptConf</a></div></div><div class=MEntry><div class=MFile><a href="backuppchosts-aug.html">BackupPCHosts</a></div></div><div class=MEntry><div class=MFile><a href="cgconfig-aug.html">Cgconfig</a></div></div><div class=MEntry><div class=MFile><a href="cgrules-aug.html">Cgrules</a></div></div><div class=MEntry><div class=MFile><a href="cron-aug.html">Cron</a></div></div><div class=MEntry><div class=MFile><a href="crypttab-aug.html">crypttab.aug</a></div></div><div class=MEntry><div class=MFile><a href="debctrl-aug.html">Debctrl</a></div></div><div class=MEntry><div class=MFile><a href="desktop-aug.html">Desktop</a></div></div><div class=MEntry><div class=MFile><a href="dhcpd-aug.html">Dhcpd</a></div></div><div class=MEntry><div class=MFile><a href="dpkg-aug.html">Dpkg</a></div></div><div class=MEntry><div class=MFile><a href="exports-aug.html">Exports</a></div></div><div class=MEntry><div class=MFile><a href="fai_diskconfig-aug.html">FAI_DiskConfig</a></div></div><div class=MEntry><div class=MFile><a href="grub-aug.html">Grub</a></div></div><div class=MEntry><div class=MFile><a href="hostname-aug.html">Hostname</a></div></div><div class=MEntry><div class=MFile><a href="hosts_access-aug.html">Hosts_Access</a></div></div><div class=MEntry><div class=MFile><a href="host_conf-aug.html">Host_Conf</a></div></div><div class=MEntry><div class=MFile><a href="iptables-aug.html">Iptables</a></div></div><div class=MEntry><div class=MFile><a href="kdump-aug.html">Kdump</a></div></div><div class=MEntry><div class=MFile><a href="keepalived-aug.html">Keepalived</a></div></div><div class=MEntry><div class=MFile><a href="login_defs-aug.html">Login_defs</a></div></div><div class=MEntry><div class=MFile><a href="lokkit-aug.html">Lokkit</a></div></div><div class=MEntry><div class=MFile><a href="mke2fs-aug.html">Mke2fs</a></div></div><div class=MEntry><div class=MFile><a href="modprobe-aug.html">Modprobe</a></div></div><div class=MEntry><div class=MFile><a href="modules-aug.html">Modules</a></div></div><div class=MEntry><div class=MFile><a href="modules_conf-aug.html">Modules_conf</a></div></div><div class=MEntry><div class=MFile><a href="nagioscfg-aug.html">NagiosCfg</a></div></div><div class=MEntry><div class=MFile><a href="nagiosobjects-aug.html">NagiosObjects</a></div></div><div class=MEntry><div class=MFile><a href="networks-aug.html">Networks</a></div></div><div class=MEntry><div class=MFile><a href="nrpe-aug.html">Nrpe</a></div></div><div class=MEntry><div class=MFile><a href="nsswitch-aug.html">Nsswitch</a></div></div><div class=MEntry><div class=MFile><a href="pbuilder-aug.html">Pbuilder</a></div></div><div class=MEntry><div class=MFile><a href="pg_hba-aug.html">Pg_Hba</a></div></div><div class=MEntry><div class=MFile><a href="puppetfileserver-aug.html">PuppetFileserver</a></div></div><div class=MEntry><div class=MFile><a href="reprepro_uploaders-aug.html">Reprepro_Uploaders</a></div></div><div class=MEntry><div class=MFile><a href="resolv-aug.html">Resolv</a></div></div><div class=MEntry><div class=MFile><a href="schroot-aug.html">Schroot</a></div></div><div class=MEntry><div class=MFile><a href="services-aug.html">Services</a></div></div><div class=MEntry><div class=MFile><a href="shells-aug.html">Shells</a></div></div><div class=MEntry><div class=MFile><a href="solaris_system-aug.html">Solaris_System</a></div></div><div class=MEntry><div class=MFile><a href="ssh-aug.html">Ssh</a></div></div><div class=MEntry><div class=MFile><a href="sshd-aug.html">Sshd</a></div></div><div class=MEntry><div class=MFile><a href="sudoers-aug.html">Sudoers</a></div></div><div class=MEntry><div class=MFile><a href="syslog-aug.html">Syslog</a></div></div><div class=MEntry><div class=MFile><a href="xinetd-aug.html">Xinetd</a></div></div><div class=MEntry><div class=MFile><a href="xorg-aug.html">Xorg</a></div></div><div class=MEntry><div class=MFile><a href="shellvars-aug.html">Shellvars</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Generic Modules</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile id=MSelected>Build</div></div><div class=MEntry><div class=MFile><a href="inifile-aug.html">IniFile</a></div></div><div class=MEntry><div class=MFile><a href="rx-aug.html">Rx</a></div></div><div class=MEntry><div class=MFile><a href="sep-aug.html">Sep</a></div></div><div class=MEntry><div class=MFile><a href="util-aug.html">Util</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Tests and Examples</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="tests/test_access-aug.html">Test_Access</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_approx-aug.html">Test_Approx</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_aliases-aug.html">Test_Aliases</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_reprepro_uploaders-aug.html">Test_Reprepro_Uploaders</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_inifile-aug.html">Test_IniFile</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_keepalived-aug.html">Test_Keepalived</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_login_defs-aug.html">Test_login_defs</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_xml-aug.html">Test_Xml</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_fai_diskconfig-aug.html">Test_FAI_DiskConfig</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/AugeasLenses.html">Lenses</a></div></div><div class=MEntry><div class=MIndex><a href="../index/AugeasModules.html">Modules</a></div></div><div class=MEntry><div class=MIndex><a href="../index/AugeasVariables.html">Variables</a></div></div><div class=MEntry><div class=MIndex><a href="../index/AugeasTests.html">Tests</a></div></div><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value="AugeasLenses">Augeas Lenses</option><option value="AugeasModules">Augeas Modules</option><option value="AugeasTests">Augeas Tests</option><option value="AugeasVariables">Augeas Variables</option><option value="Files">Files</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([3, 4, 5], 6);// --></script></div><!--Menu-->



<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let brackets (l:lens) (r:lens) (lns:lens) = l . lns . r

</td></tr></table></blockquote>Put a lens inside brackets</div></div><div class=CToolTip id="tt2"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let list (lns:lens) (sep:lens) = lns . ( sep . lns )+

</td></tr></table></blockquote>Build a list of identical lenses separated with a given separator (at least 2 elements)</div></div><div class=CToolTip id="tt3"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let opt_list (lns:lens) (sep:lens) = lns . ( sep . lns )*

</td></tr></table></blockquote>Same as list, but there might be only one element in the list</div></div><div class=CToolTip id="tt4"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let xchg (m:regexp) (d:string) (l:string) = del m d . label l
</td></tr></table></blockquote>Replace a pattern with a different label in the tree, thus emulating a key but allowing to replace the keyword with a different value than matched</div></div><div class=CToolTip id="tt5"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let xchgs (m:string) (l:string) = xchg m m l

</td></tr></table></blockquote>Same as xchg, but the pattern is the default string</div></div><div class=CToolTip id="tt6"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let key_value_line (kw:regexp) (sep:lens) (sto:lens) =
                                   [ key kw . sep . sto . eol ]
</td></tr></table></blockquote>A subnode with a keyword, a separator and a storing lens, and an end of line</div></div><div class=CToolTip id="tt7"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let key_value_line_comment (kw:regexp) (sep:lens) (sto:lens) (comment:lens) =
                                   [ key kw . sep . sto . (eol|comment) ]
</td></tr></table></blockquote>Same as key_value_line, but allows to have a comment in the end of a line and an end of line</div></div><div class=CToolTip id="tt8"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let key_value (kw: regexp) (sep:lens) (sto:lens) =
                                   [ key kw . sep . sto ]
</td></tr></table></blockquote>Same as key_value_line, but does not end with an end of line</div></div><div class=CToolTip id="tt9"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let key_ws_value (kw:regexp) =
  key_value_line kw Util.del_ws_spc (store Rx.space_in)
</td></tr></table></blockquote>Store a key/value pair where key and value are separated by whitespace and the value goes to the end of the line. </div></div><div class=CToolTip id="tt10"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let flag (kw:regexp) = [ key kw ]
</td></tr></table></blockquote>A simple flag subnode, consisting of a single key</div></div><div class=CToolTip id="tt11"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let flag_line (kw:regexp) = [ key kw . eol ]
</td></tr></table></blockquote>A simple flag line, consisting of a single key</div></div><div class=CToolTip id="tt12"><div class=CAugeasModule>Generic separators to build lenses</div></div><div class=CToolTip id="tt13"><div class=CAugeasModule>Generic module providing useful primitives</div></div><!--END_ND_TOOLTIPS-->




<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>


<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>