<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html xmlns:fn="http://www.w3.org/2005/02/xpath-functions"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link rel="stylesheet" href="../../../../doc/otp_doc.css" type="text/css"> <title>Erlang -- edoc_lib</title> </head> <body bgcolor="white" text="#000000" link="#0000ff" vlink="#ff00ff" alink="#ff0000"><div id="container"> <script id="js" type="text/javascript" language="JavaScript" src="../../../../doc/js/flipmenu/flipmenu.js"></script><script id="js2" type="text/javascript" src="../../../../doc/js/erlresolvelinks.js"></script><script language="JavaScript" type="text/javascript"> <!-- function getWinHeight() { var myHeight = 0; if( typeof( window.innerHeight ) == 'number' ) { //Non-IE myHeight = window.innerHeight; } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) { //IE 6+ in 'standards compliant mode' myHeight = document.documentElement.clientHeight; } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) { //IE 4 compatible myHeight = document.body.clientHeight; } return myHeight; } function setscrollpos() { var objf=document.getElementById('loadscrollpos'); document.getElementById("leftnav").scrollTop = objf.offsetTop - getWinHeight()/2; } function addEvent(obj, evType, fn){ if (obj.addEventListener){ obj.addEventListener(evType, fn, true); return true; } else if (obj.attachEvent){ var r = obj.attachEvent("on"+evType, fn); return r; } else { return false; } } addEvent(window, 'load', setscrollpos); //--></script><div id="leftnav"><div class="innertube"> <img alt="Erlang logo" src="../../../../doc/erlang-logo.png"><br><small><a href="users_guide.html">User's Guide</a><br><a href="index.html">Reference Manual</a><br><a href="release_notes.html">Release Notes</a><br><a href="../pdf/edoc-0.7.6.6.pdf">PDF</a><br><a href="../../../../doc/index.html">Top</a></small><p><strong>EDoc</strong><br><strong>Reference Manual</strong><br><small>Version 0.7.6.6</small></p> <br><a href="javascript:openAllFlips()">Expand All</a><br><a href="javascript:closeAllFlips()">Contract All</a><p><small><strong>Table of Contents</strong></small></p> <ul class="flipMenu"> <li id="no" title="edoc " expanded="false">edoc<ul> <li><a href="edoc.html"> Top of manual page </a></li> <li title="application-1"><a href="edoc.html#application-1">application/1</a></li> <li title="application-2"><a href="edoc.html#application-2">application/2</a></li> <li title="application-3"><a href="edoc.html#application-3">application/3</a></li> <li title="file-1"><a href="edoc.html#file-1">file/1</a></li> <li title="file-2"><a href="edoc.html#file-2">file/2</a></li> <li title="files-1"><a href="edoc.html#files-1">files/1</a></li> <li title="files-2"><a href="edoc.html#files-2">files/2</a></li> <li title="get_doc-1"><a href="edoc.html#get_doc-1">get_doc/1</a></li> <li title="get_doc-2"><a href="edoc.html#get_doc-2">get_doc/2</a></li> <li title="get_doc-3"><a href="edoc.html#get_doc-3">get_doc/3</a></li> <li title="layout-1"><a href="edoc.html#layout-1">layout/1</a></li> <li title="layout-2"><a href="edoc.html#layout-2">layout/2</a></li> <li title="packages-1"><a href="edoc.html#packages-1">packages/1</a></li> <li title="packages-2"><a href="edoc.html#packages-2">packages/2</a></li> <li title="read-1"><a href="edoc.html#read-1">read/1</a></li> <li title="read-2"><a href="edoc.html#read-2">read/2</a></li> <li title="read_comments-1"><a href="edoc.html#read_comments-1">read_comments/1</a></li> <li title="read_comments-2"><a href="edoc.html#read_comments-2">read_comments/2</a></li> <li title="read_source-1"><a href="edoc.html#read_source-1">read_source/1</a></li> <li title="read_source-2"><a href="edoc.html#read_source-2">read_source/2</a></li> <li title="run-4"><a href="edoc.html#run-4">run/4</a></li> </ul> </li> <li id="no" title="edoc_doclet " expanded="false">edoc_doclet<ul> <li><a href="edoc_doclet.html"> Top of manual page </a></li> <li title="run-2"><a href="edoc_doclet.html#run-2">run/2</a></li> </ul> </li> <li id="no" title="edoc_extract " expanded="false">edoc_extract<ul> <li><a href="edoc_extract.html"> Top of manual page </a></li> <li title="file-4"><a href="edoc_extract.html#file-4">file/4</a></li> <li title="header-3"><a href="edoc_extract.html#header-3">header/3</a></li> <li title="header-4"><a href="edoc_extract.html#header-4">header/4</a></li> <li title="header-5"><a href="edoc_extract.html#header-5">header/5</a></li> <li title="source-3"><a href="edoc_extract.html#source-3">source/3</a></li> <li title="source-4"><a href="edoc_extract.html#source-4">source/4</a></li> <li title="source-5"><a href="edoc_extract.html#source-5">source/5</a></li> <li title="text-4"><a href="edoc_extract.html#text-4">text/4</a></li> </ul> </li> <li id="no" title="edoc_layout " expanded="false">edoc_layout<ul> <li><a href="edoc_layout.html"> Top of manual page </a></li> <li title="module-2"><a href="edoc_layout.html#module-2">module/2</a></li> <li title="overview-2"><a href="edoc_layout.html#overview-2">overview/2</a></li> <li title="package-2"><a href="edoc_layout.html#package-2">package/2</a></li> <li title="type-1"><a href="edoc_layout.html#type-1">type/1</a></li> </ul> </li> <li id="loadscrollpos" title="edoc_lib " expanded="true">edoc_lib<ul> <li><a href="edoc_lib.html"> Top of manual page </a></li> <li title="copy_file-2"><a href="edoc_lib.html#copy_file-2">copy_file/2</a></li> <li title="count-2"><a href="edoc_lib.html#count-2">count/2</a></li> <li title="datestr-1"><a href="edoc_lib.html#datestr-1">datestr/1</a></li> <li title="escape_uri-1"><a href="edoc_lib.html#escape_uri-1">escape_uri/1</a></li> <li title="filename-1"><a href="edoc_lib.html#filename-1">filename/1</a></li> <li title="find_doc_dirs-0"><a href="edoc_lib.html#find_doc_dirs-0">find_doc_dirs/0</a></li> <li title="find_file-3"><a href="edoc_lib.html#find_file-3">find_file/3</a></li> <li title="find_sources-2"><a href="edoc_lib.html#find_sources-2">find_sources/2</a></li> <li title="find_sources-3"><a href="edoc_lib.html#find_sources-3">find_sources/3</a></li> <li title="get_doc_env-1"><a href="edoc_lib.html#get_doc_env-1">get_doc_env/1</a></li> <li title="get_doc_env-4"><a href="edoc_lib.html#get_doc_env-4">get_doc_env/4</a></li> <li title="get_first_sentence-1"><a href="edoc_lib.html#get_first_sentence-1">get_first_sentence/1</a></li> <li title="is_name-1"><a href="edoc_lib.html#is_name-1">is_name/1</a></li> <li title="is_relative_uri-1"><a href="edoc_lib.html#is_relative_uri-1">is_relative_uri/1</a></li> <li title="is_space-1"><a href="edoc_lib.html#is_space-1">is_space/1</a></li> <li title="join_uri-2"><a href="edoc_lib.html#join_uri-2">join_uri/2</a></li> <li title="lines-1"><a href="edoc_lib.html#lines-1">lines/1</a></li> <li title="parse_contact-2"><a href="edoc_lib.html#parse_contact-2">parse_contact/2</a></li> <li title="parse_expr-2"><a href="edoc_lib.html#parse_expr-2">parse_expr/2</a></li> <li title="read_info_file-1"><a href="edoc_lib.html#read_info_file-1">read_info_file/1</a></li> <li title="run_doclet-2"><a href="edoc_lib.html#run_doclet-2">run_doclet/2</a></li> <li title="run_layout-2"><a href="edoc_lib.html#run_layout-2">run_layout/2</a></li> <li title="segment-2"><a href="edoc_lib.html#segment-2">segment/2</a></li> <li title="simplify_path-1"><a href="edoc_lib.html#simplify_path-1">simplify_path/1</a></li> <li title="split_at-2"><a href="edoc_lib.html#split_at-2">split_at/2</a></li> <li title="split_at_space-1"><a href="edoc_lib.html#split_at_space-1">split_at_space/1</a></li> <li title="split_at_stop-1"><a href="edoc_lib.html#split_at_stop-1">split_at_stop/1</a></li> <li title="strip_space-1"><a href="edoc_lib.html#strip_space-1">strip_space/1</a></li> <li title="timestr-1"><a href="edoc_lib.html#timestr-1">timestr/1</a></li> <li title="to_label-1"><a href="edoc_lib.html#to_label-1">to_label/1</a></li> <li title="transpose-1"><a href="edoc_lib.html#transpose-1">transpose/1</a></li> <li title="try_subdir-2"><a href="edoc_lib.html#try_subdir-2">try_subdir/2</a></li> <li title="unique-1"><a href="edoc_lib.html#unique-1">unique/1</a></li> <li title="uri_get-1"><a href="edoc_lib.html#uri_get-1">uri_get/1</a></li> <li title="write_file-3"><a href="edoc_lib.html#write_file-3">write_file/3</a></li> <li title="write_file-4"><a href="edoc_lib.html#write_file-4">write_file/4</a></li> <li title="write_info_file-4"><a href="edoc_lib.html#write_info_file-4">write_info_file/4</a></li> </ul> </li> <li id="no" title="edoc_run " expanded="false">edoc_run<ul> <li><a href="edoc_run.html"> Top of manual page </a></li> <li title="application-1"><a href="edoc_run.html#application-1">application/1</a></li> <li title="file-1"><a href="edoc_run.html#file-1">file/1</a></li> <li title="files-1"><a href="edoc_run.html#files-1">files/1</a></li> <li title="packages-1"><a href="edoc_run.html#packages-1">packages/1</a></li> </ul> </li> </ul> </div></div> <div id="content"> <div class="innertube"> <!-- refpage --><center><h1>edoc_lib</h1></center> <h3>MODULE</h3> <div class="REFBODY">edoc_lib</div> <h3>MODULE SUMMARY</h3> <div class="REFBODY">Utility functions for EDoc.</div> <h3>DESCRIPTION</h3> <div class="REFBODY"><p> <p>Utility functions for EDoc.</p></p></div> <h3><a name="id2265584">DATA TYPES</a></h3> <div class="REFBODY"> <a name="types"></a> <dl> <dt><strong><span class="code">edoc_env()</span></strong></dt> <dd> <a name="type-edoc_env"></a> <p>Environment information needed by EDoc for generating references. The data representation is not documented. </p> </dd> <dt><strong><span class="code">info() = #info{name=string(), mail=string(), uri=string()}</span></strong></dt> <dd> <a name="type-info"></a> </dd> </dl> </div> <h3>EXPORTS</h3> <p><a name="copy_file-2"><span class="bold_code">copy_file(From, To) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="copy_file-2"></a> </p></div> <p><a name="count-2"><span class="bold_code">count(X, Xs) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="count-2"></a> </p></div> <p><a name="datestr-1"><span class="bold_code">datestr(X1) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="datestr-1"></a> </p></div> <p><a name="escape_uri-1"><span class="bold_code">escape_uri(Cs) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="escape_uri-1"></a> </p></div> <p><a name="filename-1"><span class="bold_code">filename(T) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="filename-1"></a> </p></div> <p><a name="find_doc_dirs-0"><span class="bold_code">find_doc_dirs() -> term() </span></a><br></p> <div class="REFBODY"><p><a name="find_doc_dirs-0"></a> </p></div> <p><a name="find_file-3"><span class="bold_code">find_file(Ps, Pkg, Name) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="find_file-3"></a> </p></div> <p><a name="find_sources-2"><span class="bold_code">find_sources(Path, Opts) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="find_sources-2"></a> </p></div> <p><a name="find_sources-3"><span class="bold_code">find_sources(Path, Pkg, Opts) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="find_sources-3"></a> <p>See <span class="bold_code"><a href="edoc.html#run-3">edoc:run/3</a></span> for a description of the options <span class="code">subpackages</span>, <span class="code">source_suffix</span> and <span class="code">exclude_packages</span>.</p> </p></div> <p><a name="get_doc_env-1"><span class="bold_code">get_doc_env(Options::proplist()) -> edoc_env()</span></a><br></p> <div class="REFBODY"><p><a name="get_doc_env-1"></a> <p>Equivalent to <span class="bold_code"><a href="#get_doc_env-4">get_doc_env([], [], [], Opts)</a></span>.</p> </p></div> <p><a name="get_doc_env-4"><span class="bold_code">get_doc_env(App, Packages, Modules, Options::proplist()) -> edoc_env()</span></a><br></p> <div class="REFBODY"> <p>Types:</p> <div class="REFTYPES"> <span class="bold_code">App = [] | atom()</span><br> </div> <div class="REFTYPES"> <span class="bold_code">Packages = [atom()]</span><br> </div> <div class="REFTYPES"> <span class="bold_code">Modules = [atom()]</span><br> </div> <div class="REFTYPES"> <span class="bold_code">[term()]</span><br> </div> </div> <div class="REFBODY"><p><a name="get_doc_env-4"></a> <p>Creates an environment data structure used by parts of EDoc for generating references, etc. See <span class="bold_code"><a href="edoc.html#run-3">edoc:run/3</a></span> for a description of the options <span class="code">file_suffix</span>, <span class="code">app_default</span> and <span class="code">doc_path</span>. </p> <p><strong>See also:</strong> <span class="bold_code"><a href="edoc.html#get_doc-3">edoc:get_doc/3</a></span>, <span class="bold_code"><a href="edoc_extract.html#source-4">edoc_extract:source/4</a></span>.</p> </p></div> <p><a name="get_first_sentence-1"><span class="bold_code">get_first_sentence(Es) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="get_first_sentence-1"></a> </p></div> <p><a name="is_name-1"><span class="bold_code">is_name(Cs) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="is_name-1"></a> </p></div> <p><a name="is_relative_uri-1"><span class="bold_code">is_relative_uri(Cs) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="is_relative_uri-1"></a> </p></div> <p><a name="is_space-1"><span class="bold_code">is_space(Cs) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="is_space-1"></a> </p></div> <p><a name="join_uri-2"><span class="bold_code">join_uri(Base, Path) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="join_uri-2"></a> </p></div> <p><a name="lines-1"><span class="bold_code">lines(Cs) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="lines-1"></a> </p></div> <p><a name="parse_contact-2"><span class="bold_code">parse_contact(S, L) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="parse_contact-2"></a> <p>EDoc "contact information" parsing. This is the type of the content in e.g. <span class="bold_code"><a href="chapter.html#mtag-author">@author</a></span> tags.</p> </p></div> <p><a name="parse_expr-2"><span class="bold_code">parse_expr(S, L) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="parse_expr-2"></a> <p>EDoc Erlang expression parsing. For parsing things like the content of <span class="bold_code"><a href="chapter.html#ftag-equiv">@equiv</a></span> tags, and strings denoting file names, e.g. in @headerfile. Also used by <span class="bold_code"><a href="edoc_run.html">edoc_run</a></span>.</p> </p></div> <p><a name="read_info_file-1"><span class="bold_code">read_info_file(Dir) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="read_info_file-1"></a> </p></div> <p><a name="run_doclet-2"><span class="bold_code">run_doclet(Fun, Opts) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="run_doclet-2"></a> <p>See <span class="bold_code"><a href="edoc.html#run-3">edoc:run/3</a></span> for a description of the <span class="code">doclet</span> option.</p> </p></div> <p><a name="run_layout-2"><span class="bold_code">run_layout(Fun, Opts) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="run_layout-2"></a> <p>See <span class="bold_code"><a href="edoc.html#layout-2">edoc:layout/2</a></span> for a description of the <span class="code">layout</span> option.</p> </p></div> <p><a name="segment-2"><span class="bold_code">segment(Es, N) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="segment-2"></a> </p></div> <p><a name="simplify_path-1"><span class="bold_code">simplify_path(P) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="simplify_path-1"></a> </p></div> <p><a name="split_at-2"><span class="bold_code">split_at(Cs, K) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="split_at-2"></a> </p></div> <p><a name="split_at_space-1"><span class="bold_code">split_at_space(Cs) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="split_at_space-1"></a> </p></div> <p><a name="split_at_stop-1"><span class="bold_code">split_at_stop(Cs) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="split_at_stop-1"></a> </p></div> <p><a name="strip_space-1"><span class="bold_code">strip_space(Cs) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="strip_space-1"></a> </p></div> <p><a name="timestr-1"><span class="bold_code">timestr(X1) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="timestr-1"></a> </p></div> <p><a name="to_label-1"><span class="bold_code">to_label(Cs) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="to_label-1"></a> </p></div> <p><a name="transpose-1"><span class="bold_code">transpose(Xss) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="transpose-1"></a> </p></div> <p><a name="try_subdir-2"><span class="bold_code">try_subdir(Dir, Subdir) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="try_subdir-2"></a> </p></div> <p><a name="unique-1"><span class="bold_code">unique(Xs) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="unique-1"></a> </p></div> <p><a name="uri_get-1"><span class="bold_code">uri_get(Path) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="uri_get-1"></a> </p></div> <p><a name="write_file-3"><span class="bold_code">write_file(Text::deep_string(), Dir::filename() (see module edoc), Name::filename() (see module edoc)) -> ok</span></a><br></p> <div class="REFBODY"><p><a name="write_file-3"></a> <p>Write the given <span class="code">Text</span> to the file named by <span class="code">Name</span> in directory <span class="code">Dir</span>. If the target directory does not exist, it will be created.</p> </p></div> <p><a name="write_file-4"><span class="bold_code">write_file(Text::deep_string(), Dir::filename() (see module edoc), Name::filename() (see module edoc), Package::atom() | string()) -> ok</span></a><br></p> <div class="REFBODY"><p><a name="write_file-4"></a> <p>Like <span class="bold_code"><a href="#write_file-3">write_file/3</a></span>, but adds path components to the target directory corresponding to the specified package.</p> </p></div> <p><a name="write_info_file-4"><span class="bold_code">write_info_file(App, Packages, Modules, Dir) -> term() </span></a><br></p> <div class="REFBODY"><p><a name="write_info_file-4"></a> </p></div> <h3><a name="id2266712">See also</a></h3> <div class="REFBODY"><p><span class="bold_code"><a href="edoc.html">edoc</a></span></p></div> Richard Carlsson richardc@it.uu.se</div> <div class="footer"> <hr> <p>Copyright © 2006-2010 Ericsson AB. All Rights Reserved.</p> </div> </div> </div></body> </html>