aboutsummaryrefslogtreecommitdiffstats
path: root/lib/reltool/src/reltool.hrl
diff options
context:
space:
mode:
Diffstat (limited to 'lib/reltool/src/reltool.hrl')
-rw-r--r--lib/reltool/src/reltool.hrl98
1 files changed, 51 insertions, 47 deletions
diff --git a/lib/reltool/src/reltool.hrl b/lib/reltool/src/reltool.hrl
index 93f47f6381..f0d8b38519 100644
--- a/lib/reltool/src/reltool.hrl
+++ b/lib/reltool/src/reltool.hrl
@@ -1,7 +1,7 @@
%%
%% %CopyrightBegin%
%%
-%% Copyright Ericsson AB 2009-2011. All Rights Reserved.
+%% Copyright Ericsson AB 2009-2012. All Rights Reserved.
%%
%% The contents of this file are subject to the Erlang Public License,
%% Version 1.1, (the "License"); you may not use this file except in
@@ -45,6 +45,7 @@
-type profile() :: development | embedded | standalone.
-type relocatable() :: boolean().
-type escript_file() :: file().
+-type escript_app_name() :: app_name().
-type mod_name() :: atom().
-type app_name() :: atom().
-type app_vsn() :: string(). % e.g. "4.7"
@@ -62,7 +63,8 @@
-type mod() :: {incl_cond, incl_cond()}
| {debug_info, debug_info()}.
-type app() :: {vsn, app_vsn()}
- | {mod, mod_name(), mod()}
+ | {lib_dir, lib_dir()}
+ | {mod, mod_name(), [mod()]}
| {mod_cond, mod_cond()}
| {incl_cond, incl_cond()}
| {app_file, app_file()}
@@ -77,6 +79,7 @@
| {debug_info, debug_info()}
| {app_file, app_file()}
| {profile, profile()}
+ | {excl_lib, excl_lib()}
| {incl_sys_filters, incl_sys_filters()}
| {excl_sys_filters, excl_sys_filters()}
| {incl_app_filters, incl_app_filters()}
@@ -121,32 +124,31 @@
-type incl_defaults() :: boolean().
-type incl_derived() :: boolean().
-type status() :: missing | ok.
+-type excl_lib() :: otp_root.
-record(common,
{
sys_debug :: term(),
wx_debug :: term(),
- trap_exit :: boolean(),
- app_tab :: ets:tab(),
- mod_tab :: ets:tab(),
- mod_used_by_tab :: ets:tab()
+ trap_exit :: boolean()
}).
+%% Types '$1','$2' and '_' are needed for match specs to ets:select
-record(mod,
{ %% Static
- name :: mod_name(),
- app_name :: app_name(),
- incl_cond :: incl_cond() | undefined,
- debug_info :: debug_info() | undefined,
- is_app_mod :: boolean(),
- is_ebin_mod :: boolean(),
- uses_mods :: [mod_name()],
- exists :: boolean(),
+ name :: '$1' | mod_name(),
+ app_name :: '_' | app_name(),
+ incl_cond :: '_' | incl_cond() | undefined,
+ debug_info :: '_' | debug_info() | undefined,
+ is_app_mod :: '_' | boolean(),
+ is_ebin_mod :: '_' | boolean(),
+ uses_mods :: '$2' | [mod_name()],
+ exists :: '_' | boolean(),
%% Dynamic
- status :: status(),
- used_by_mods :: [mod_name()],
- is_pre_included :: boolean() | undefined,
- is_included :: boolean() | undefined
+ status :: '_' | status(),
+ used_by_mods :: '_' | [mod_name()],
+ is_pre_included :: '_' | boolean() | undefined,
+ is_included :: '_' | boolean() | undefined
}).
-record(app_info,
@@ -167,48 +169,49 @@
-record(regexp, {source, compiled}).
+%% Types '$1','$2' and '_' are needed for match specs to ets:select
-record(app,
{ %% Static info
- name :: app_name(),
- is_escript :: boolean(),
- use_selected_vsn :: boolean() | undefined,
- active_dir :: dir(),
- sorted_dirs :: [dir()],
- vsn :: app_vsn(),
- label :: app_label(),
- info :: #app_info{} | undefined,
- mods :: [#mod{}],
+ name :: '_' | app_name(),
+ is_escript :: '_' | boolean() | {inlined, escript_app_name()},
+ use_selected_vsn :: '_' | vsn | dir | undefined,
+ active_dir :: '_' | dir(),
+ sorted_dirs :: '_' | [dir()],
+ vsn :: '_' | app_vsn(),
+ label :: '_' | app_label(),
+ info :: '_' | #app_info{} | undefined,
+ mods :: '_' | [#mod{}],
%% Static source cond
- mod_cond :: mod_cond() | undefined,
- incl_cond :: incl_cond() | undefined,
+ mod_cond :: '_' | mod_cond() | undefined,
+ incl_cond :: '_' | incl_cond() | undefined,
%% Static target cond
- debug_info :: debug_info() | undefined,
- app_file :: app_file() | undefined,
- app_type :: app_type() | undefined,
- incl_app_filters :: [#regexp{}],
- excl_app_filters :: [#regexp{}],
- incl_archive_filters :: [#regexp{}],
- excl_archive_filters :: [#regexp{}],
- archive_opts :: [archive_opt()],
+ debug_info :: '_' | debug_info() | undefined,
+ app_file :: '_' | app_file() | undefined,
+ app_type :: '_' | app_type() | undefined,
+ incl_app_filters :: '_' | [#regexp{}],
+ excl_app_filters :: '_' | [#regexp{}],
+ incl_archive_filters :: '_' | [#regexp{}],
+ excl_archive_filters :: '_' | [#regexp{}],
+ archive_opts :: '_' | [archive_opt()],
%% Dynamic
- status :: status(),
- uses_mods :: [mod_name()],
- used_by_mods :: [mod_name()],
- uses_apps :: [app_name()],
- used_by_apps :: [app_name()],
- is_pre_included :: boolean(),
- is_included :: boolean(),
- rels :: [rel_name()]
+ status :: '_' | status(),
+ uses_mods :: '_' | [mod_name()],
+ used_by_mods :: '_' | [mod_name()],
+ uses_apps :: '_' | [app_name()],
+ used_by_apps :: '_' | [app_name()],
+ is_pre_included :: '_' | '$2' | boolean() | undefined,
+ is_included :: '_' | '$1' | boolean() | undefined,
+ rels :: '_' | [rel_name()]
}).
-record(rel_app,
{
name :: app_name(),
app_type :: app_type() | undefined,
- incl_apps = [] :: [incl_app()]
+ incl_apps :: [incl_app()] | undefined
}).
-record(rel,
@@ -225,13 +228,14 @@
escripts :: [file()],
mod_cond :: mod_cond(),
incl_cond :: incl_cond(),
- apps :: [#app{}],
+ apps :: [#app{}] | undefined,
%% Target cond
boot_rel :: boot_rel(),
rels :: [#rel{}],
emu_name :: emu_name(),
profile :: profile(),
+ excl_lib :: excl_lib(),
incl_sys_filters :: [#regexp{}],
excl_sys_filters :: [#regexp{}],
incl_app_filters :: [#regexp{}],