modulefdoc_project
The whole project: loads and parses the files, merges them into one list of entities, and connects the entities with each other.
Uses
Graphs
Uses
Used by
Types
project_t
The parsed project.
symbol_list_tprivate
Names, in the order they were added, with an index.
symbol_t
An entity under the name it is known by in some scope.
symbols_tprivate
The names a module makes public, by category.
Functions
copy_bindingprivate
Add to type id a copy of generic binding item, returning the copy.
find_inpureprivate
The position of name in symbols, or 0.
find_moduleprivate
The position in p%modules of the module named name, or 0.
find_symbolrecursive
What name means in scope scope for category category (see in_category), or 0.
in_categorypureprivate
True if entity e declares a name of category category: 1 procedures, 2 abstract interfaces,
3 types, 4 variables.
is_program_unitpureprivate
True if entities of kind are program units. The permission of a module is what its members get
by default, so display says nothing about whether the module itself is shown.
module_positionpureprivate
The position in p%modules of module entity id, or 0.
overridesprivate
True if type id declares a binding named name itself.
public_symbolpureprivate
The public entity of module which named name in category category, or 0.
public_symbols
The public names of module which in a category: 1 procedures, 2 abstract interfaces, 3 types,
4 variables.
Subroutines
add_external_modulesprivate
Add modules documented elsewhere: extra_mods, and the modules.json of external projects.
add_symbolprivate
Add name for entity id to list, replacing any entity it has.
correlate
Connect entities across files: the public names of each module, and what types inherit.
generic_bodiesprivate
Add the public bodies of the generic interfaces of module id.
import_namesprivate
Add to module which what it makes public of what use with spec imports from module used.
inheritrecursiveprivate
Work out what type id inherits, after its parent type.
link_usesprivate
Find the modules that use statements and submodules refer to.
load_external_projectprivate
Add the modules in the modules.json of an external project at url, a path or a web address.
load_project_sources
Find, load and parse the source files, and merge the results into p.
merge_listprivate
Move the entities of from to the end of p%list, adjusting their indices.
public_namesrecursiveprivate
Compute the public names of module which, after those of the modules it uses.
read_externalrecursiveprivate
Add the entity described by node of an external modules.json, with those inside it.
read_sourceprivate
Read source file path, warning if that fails.
read_use_specprivate
Read what follows the module name in a use statement.
set_constructorprivate
Give a procedure or interface named like type id, its constructor, the type's permission.