# edoc_lib

### MODULE

edoc_lib

### MODULE SUMMARY

Utility functions for EDoc.

### DESCRIPTION

Utility functions for EDoc.

### DATA TYPES

`edoc_env()`
  Environment information needed by EDoc for generating references. The data representation is not documented.
`info() = #info{name=string(), mail=string(), uri=string()}`

### EXPORTS

`copy_dir(From, To) -> term()`

`copy_file(From, To) -> term()`

`count(X, Xs) -> term()`

`datestr(X1) -> term()`

`escape_uri(Cs) -> term()`

`filename(T) -> term()`

`find_doc_dirs() -> term()`

`find_file(Ps, Pkg, Name) -> term()`

`find_sources(Path, Opts) -> term()`

`find_sources(Path, Pkg, Opts) -> term()`

See edoc:run/3 for a description of the options `subpackages`, `source_suffix` and `exclude_packages`.

`get_doc_env(Options::option_list() (see module edoc)) -> edoc_env()`

Equivalent to get_doc_env([], [], [], Opts).

`get_doc_env(App, Packages, Modules, Options::option_list() (see module edoc)) -> edoc_env()`

Types:

`App = [] | atom()`
`Packages = [atom()]`
`Modules = [atom()]`

Creates an environment data structure used by parts of EDoc for generating references, etc. See edoc:run/3 for a description of the options `file_suffix`, `app_default` and `doc_path`.

See also: edoc:get_doc/3, edoc_extract:source/4.

`get_first_sentence(Es) -> term()`

`is_name(Cs) -> term()`

`is_relative_uri(Cs) -> term()`

`is_space(Cs) -> term()`

`join_uri(Base, Path) -> term()`

`lines(Cs) -> term()`

`parse_contact(S, L) -> term()`

EDoc "contact information" parsing. This is the type of the content in e.g. @author tags.

`parse_expr(S, L) -> term()`

EDoc Erlang expression parsing. For parsing things like the content of @equiv tags, and strings denoting file names, e.g. in @headerfile. Also used by edoc_run.

`read_info_file(Dir) -> term()`

`run_doclet(Fun, Opts) -> term()`

See edoc:run/3 for a description of the `doclet` option.

`run_layout(Fun, Opts) -> term()`

See edoc:layout/2 for a description of the `layout` option.

`segment(Es, N) -> term()`

`simplify_path(P) -> term()`

`split_at(Cs, K) -> term()`

`split_at_stop(Cs) -> term()`

`strip_space(Cs) -> term()`

`timestr(X1) -> term()`

`to_label(Cs) -> term()`

`transpose(Xss) -> term()`

`try_subdir(Dir, Subdir) -> term()`

`unique(Xs) -> term()`

`uri_get(Path) -> term()`

`write_file(Text::deep_string(), Dir::filename() (see module edoc), Name::filename() (see module edoc)) -> ok`

Write the given `Text` to the file named by `Name` in directory `Dir`. If the target directory does not exist, it will be created.

`write_file(Text::deep_string(), Dir::filename() (see module edoc), Name::filename() (see module edoc), Package::atom() | string()) -> ok`

Like write_file/3, but adds path components to the target directory corresponding to the specified package.

`write_info_file(App, Packages, Modules, Dir) -> term()`

### See also

edoc

### AUTHORS

Richard Carlsson - support@erlang.ericsson.se

edoc 0.7.1
Copyright © 1991-2007 Ericsson AB