1%% ===================================================================== 2%% Header file for EDoc 3%% 4%% Copyright (C) 2001-2004 Richard Carlsson 5%% 6%% Licensed under the Apache License, Version 2.0 (the "License"); you may 7%% not use this file except in compliance with the License. You may obtain 8%% a copy of the License at <http://www.apache.org/licenses/LICENSE-2.0> 9%% 10%% Unless required by applicable law or agreed to in writing, software 11%% distributed under the License is distributed on an "AS IS" BASIS, 12%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13%% See the License for the specific language governing permissions and 14%% limitations under the License. 15%% 16%% Alternatively, you may use this file under the terms of the GNU Lesser 17%% General Public License (the "LGPL") as published by the Free Software 18%% Foundation; either version 2.1, or (at your option) any later version. 19%% If you wish to allow use of your version of this file only under the 20%% terms of the LGPL, you should delete the provisions above and replace 21%% them with the notice and other provisions required by the LGPL; see 22%% <http://www.gnu.org/licenses/>. If you do not delete the provisions 23%% above, a recipient may use your version of this file under the terms of 24%% either the Apache License or the LGPL. 25%% 26%% Author contact: carlsson.richard@gmail.com 27%% ===================================================================== 28 29%% Note: Documentation in this file is included by edoc_extract.erl 30 31-define(APPLICATION, edoc). 32-define(INFO_FILE, "edoc-info"). 33-define(OVERVIEW_FILE, "overview.edoc"). 34-define(DEFAULT_SOURCE_SUFFIX, ".erl"). 35-define(DEFAULT_FILE_SUFFIX, ".html"). 36-define(DEFAULT_DOCLET, edoc_doclet). 37-define(DEFAULT_LAYOUT, edoc_layout). 38-define(APP_DEFAULT, "http://www.erlang.org/edoc/doc"). 39-define(CURRENT_DIR, "."). 40-define(SOURCE_DIR, "src"). 41-define(EBIN_DIR, "ebin"). 42-define(EDOC_DIR, "doc"). 43-define(REPORT_MISSING_TYPES, false). 44 45-include("edoc_doclet.hrl"). 46 47%% Module information 48 49%% @type module() = #module{name = [] | atom(), 50%% parameters = none | [atom()], 51%% functions = ordset(function_name()), 52%% exports = ordset(function_name()), 53%% attributes = ordset({atom(), term()}), 54%% records = [{atom(), [{atom(), term()}]}], 55%% encoding = epp:source_encoding()} 56%% ordset(T) = sets:ordset(T) 57%% function_name(T) = {atom(), integer()} 58 59-record(module, {name = [], 60 parameters = none, 61 functions = [], 62 exports = [], 63 attributes = [], 64 records = [], 65 encoding = latin1 66 }). 67 68%% Environment for generating documentation data 69 70-record(env, {module = [], 71 root = "", 72 file_suffix, 73 apps, 74 modules, 75 app_default, 76 macros = [], 77 includes = [] 78 }). 79 80%% Simplified comment data 81 82%% @type comment() = #comment{line = integer(), 83%% text = string()} 84 85-record(comment, {line = 0, text}). 86 87%% Module Entries (one per function, plus module header and footer) 88 89%% @type entry() = #entry{{atom(), integer()} % function 90%% | name = atom(), % other 91%% args = [atom()], 92%% line = integer(), 93%% export = boolean(), 94%% data = term()} 95 96-record(entry, {name, args = [], line = 0, export, data}). 97 98%% Generic tag information 99 100%% @type tag() = #tag{name = atom(), 101%% line = integer(), 102%% origin = comment | code, 103%% data = term()} 104 105-record(tag, {name, line = 0, origin = comment, data}). 106