[ValuesElement::] Values Element. To write the Values element (Vl) in the index. @ And here is the indexing code: = void ValuesElement::render(OUTPUT_STREAM, localisation_dictionary *LD) { inter_tree *I = InterpretIndex::get_tree(); tree_inventory *inv = Synoptic::inv(I); TreeLists::sort(inv->variable_nodes, Synoptic::module_order); @; TreeLists::sort(inv->equation_nodes, Synoptic::module_order); @; } @ = inter_symbol *definition_area = NULL, *current_area = NULL; HTML_OPEN("p"); IndexUtilities::anchor(OUT, I"NAMES"); int understood_note_given = FALSE; for (int i=0; ivariable_nodes); i++) { inter_package *pack = Inter::Package::defined_by_frame(inv->variable_nodes->list[i].node); if (Metadata::read_optional_numeric(pack, I"^indexable")) { if (Metadata::read_optional_numeric(pack, I"^understood")) @ else @; } } HTML_CLOSE("p"); @ = if (understood_note_given == FALSE) { understood_note_given = TRUE; WRITE("kind understood - value"); HTML_TAG("br"); } @ = definition_area = Metadata::read_optional_symbol(pack, I"^heading"); if (definition_area == NULL) continue; if (definition_area != current_area) { inter_package *heading_pack = Inter::Packages::container(definition_area->definition); HTML_CLOSE("p"); HTML_OPEN("p"); IndexUtilities::show_definition_area(OUT, heading_pack, FALSE); } current_area = definition_area; text_stream *name = Metadata::read_optional_textual(pack, I"^name"); WRITE("%S", name); int at = (int) Metadata::read_optional_numeric(pack, I"^at"); if (at > 0) IndexUtilities::link(OUT, at); text_stream *doc = Metadata::read_optional_textual(pack, I"^documentation"); if (Str::len(doc) > 0) IndexUtilities::DocReferences::link(OUT, doc); text_stream *contents = Metadata::read_optional_textual(pack, I"^contents"); WRITE(" - %S", contents); HTML_TAG("br"); @ = if (TreeLists::len(inv->equation_nodes) > 0) { HTML_OPEN("p"); WRITE("List of Named or Numbered Equations (About equations"); IndexUtilities::DocReferences::link(OUT, I"EQUATIONS"); WRITE(")"); HTML_CLOSE("p"); HTML_OPEN("p"); int N = 0; for (int i=0; iequation_nodes); i++) { inter_package *pack = Inter::Package::defined_by_frame(inv->equation_nodes->list[i].node); int at = (int) Metadata::read_optional_numeric(pack, I"^at"); if (at > 0) { WRITE("%S", Metadata::read_optional_textual(pack, I"^name")); IndexUtilities::link(OUT, at); WRITE(" (%S)", Metadata::read_optional_textual(pack, I"^text")); HTML_TAG("br"); N++; } } if (N == 0) WRITE("None.\n"); HTML_CLOSE("p"); }