EDoc API
Overview Cluster Class Classes Index          Top Features

edoc

Class EDOC_CONTEXT


Direct ancestors

EDOC_SHARED_ACCESS, DT_SHARED_SYSTEM_CLOCK, KL_SHARED_FILE_SYSTEM, KL_IMPORTED_STRING_ROUTINES, KL_IMPORTED_CHARACTER_ROUTINES

Creation

Features

Invariants

indexing

description

Documentation context including the eiffel parser universe and
information about included clusters and classses

copyright

Copyright (c) 2005, Julian Tschannen

license

Eiffel Forum License v2 (see forum.txt)

class EDOC_CONTEXT

create

make

-- Initialise context.

feature -- Access

clusters: ET_CLUSTERS

-- Clusters

documented_classes: DS_ARRAYED_LIST[ET_CLASS]

-- Classes for which a documentation is generated

documented_clusters: DS_ARRAYED_LIST[ET_CLUSTER]

-- Clusters for which a documentation is generated

global_index: DS_ARRAYED_LIST[EDOC_INDEX_ENTRY]

-- Global index list

-- TODO: implement usage page
-- global_usage: DS_HASH_TABLE [DS_LIST [EDOC_USAGE_ENTRY], ET_CLASS]
-- Global usage map

output_generator: EDOC_OUTPUT

-- Output generator

top_level_clusternames: DS_LINKED_LIST[STRING]

-- Included top-level clusters

universe: ET_UNIVERSE

-- Universe

feature -- Element change

add_clusters (a_clusters: ET_CLUSTERS; include_clusters: BOOLEAN)

-- Add 'a_clusters' to 'clusters'.
-- If 'include_clusters' is True also add clustesr to 'included_clusters'.

require

a_clusters_not_void: a_clusters /= Void

set_output_generator (a_generator: like output_generator)

-- Set 'output_generator' to 'a_generator'.

require

a_generator_not_void: a_generator /= Void

ensure

output_generator_set: output_generator = a_generator

feature -- Basic operations

generate_documentation

-- Generate documentation.

require

universe_parsed: universe.is_preparsed
output_generator_not_void: output_generator /= Void

generate_universe

-- Generate universe.

ensure

universe_generated: universe /= Void

parse_universe

-- Parse 'universe'

require

universe_generated: universe /= Void

ensure

universe_parsed: universe.is_preparsed

feature -- Links

cluster_file_directory (a_cluster: ET_CLUSTER): STRING

-- Generate cluster file path for a_cluster relative to output directory.

require

a_cluster_not_void: a_cluster /= Void

ensure

result_exists: Result /= Void

relative_cluster_directory (a_cluster: ET_CLUSTER): STRING

-- Relative path to directory of a_cluster.

require

a_cluster_not_void: a_cluster /= Void

ensure

result_exists: Result /= Void

relative_output_directory: STRING

-- Relative path to output directory

ensure

result_exists: Result /= Void

invariant

-- From ANY
reflexive_equality: standard_is_equal (Current)
reflexive_conformance: conforms_to (Current)