Provided by: erlang-manpages_18.3-dfsg-1ubuntu3.1_all bug

NAME

       erl_comment_scan - Functions for reading comment lines from Erlang source code.

DESCRIPTION

       Functions for reading comment lines from Erlang source code.

DATA TYPES

         comment() = {integer(), integer(), integer(), [string()]}:

EXPORTS

       file(FileName::filename() (see module file)) -> [Comment]

              Types:

                 Comment = {Line, Column, Indentation, Text}
                 Line = integer()
                 Column = integer()
                 Indentation = integer()
                 Text = [string()]

              Extracts  comments  from  an  Erlang  source  code  file. Returns a list of entries
              representing multi-line comments, listed in order of increasing  line-numbers.  For
              each entry, Text is a list of strings representing the consecutive comment lines in
              top-down order; the strings contain all characters following  (but  not  including)
              the  first  comment-introducing  % character on the line, up to (but not including)
              the line-terminating newline.

              Furthermore, Line is the line number and Column the  left  column  of  the  comment
              (i.e.,   the  column  of  the  comment-introducing  %  character).  Indent  is  the
              indentation (or padding), measured in character positions  between  the  last  non-
              whitespace  character  before the comment (or the left margin), and the left column
              of the comment. Line and Column are always positive integers, and Indentation is  a
              nonnegative integer.

              Evaluation  exits with reason {read, Reason} if a read error occurred, where Reason
              is an atom corresponding to a Posix error  code;  see  the  module  file(3erl)  for
              details.

       join_lines(Lines::[CommentLine]) -> [Comment]

              Types:

                 CommentLine = {Line, Column, Indent, string()}
                 Line = integer()
                 Column = integer()
                 Indent = integer()
                 Comment = {Line, Column, Indent, Text}
                 Text = [string()]

              Joins  individual  comment  lines  into multi-line comments. The input is a list of
              entries representing individual comment lines, in order of decreasing line-numbers;
              see  scan_lines/1  for details. The result is a list of entries representing multi-
              line comments, still listed in order of decreasing line-numbers, but where for each
              entry,  Text  is  a  list of consecutive comment lines in order of increasing line-
              numbers (i.e., top-down).

              See also: scan_lines/1.

       scan_lines(Text::string()) -> [CommentLine]

              Types:

                 CommentLine = {Line, Column, Indent, Text}
                 Line = integer()
                 Column = integer()
                 Indent = integer()
                 Text = string()

              Extracts individual comment lines from a source code  string.  Returns  a  list  of
              comment  lines found in the text, listed in order of decreasing line-numbers, i.e.,
              the last comment line in the input is first in the resulting list. Text is a single
              string,  containing all characters following (but not including) the first comment-
              introducing % character on the line, up to (but not including) the line-terminating
              newline. For details on Line, Column and Indent, see file/1.

       string(Text::string()) -> [Comment]

              Types:

                 Comment = {Line, Column, Indentation, Text}
                 Line = integer()
                 Column = integer()
                 Indentation = integer()
                 Text = [string()]

              Extracts  comments  from a string containing Erlang source code. Except for reading
              directly from a string, the behaviour is the same as for file/1.

              See also: file/1.

AUTHORS

       Richard Carlsson <carlsson.richard@gmail.com>

                                         syntax_tools 1.7                  erl_comment_scan(3erl)