List types
CodesList: TYPE ~ LIST OF ATOM;
WordsList: TYPE ~ LIST OF ROPE;
LooksList: TYPE ~ LIST OF Looks2List;
Looks2List: TYPE ~ LIST OF ATOM;
SynonymClassesList: TYPE ~ LIST OF SynonymClassList;
SynonymClassList: TYPE ~ LIST OF ROPE;
DictionariesList: TYPE ~ LIST OF Dictionary;
LanguagesList: TYPE ~ LIST OF Language;
IntegersList: TYPE ~ LIST OF INT32;
Record types
ConjugationsList: TYPE ~ LIST OF ConjugationPointer;
ConjugationPointer: TYPE ~ REF ExternalConjugationObject;
ExternalConjugationObject:
TYPE ~
RECORD [
partOfSpeech: ATOM,
definition: ROPE,
status: ATOM
];
WordPosition: TYPE ~ WordPositionPointer;
WordPositionPointer: TYPE ~ REF ExternalWordPositionObject;
ExternalWordPositionObject:
TYPE ~
RECORD [
start: INTEGER,
length: INTEGER
];
Definition: TYPE ~ DefinitionPointer;
DefinitionPointer: TYPE ~ REF ExternalDefinitionObject;
ExternalDefinitionObject:
TYPE ~
RECORD [
definition: Rope.ROPE,
looks: RunList
];
RawIntersectionResultsList: TYPE ~ LIST OF RawIntersectionResultsPointer;
RawIntersectionResultsPointer: TYPE ~ REF ExternalRawIntersectionResultsObject;
ExternalRawIntersectionResultsObject:
TYPE ~
RECORD [
keys: WordsList,
results: IntegersList
];
IntersectionResultsList: TYPE ~ LIST OF IntersectionResultsPointer;
IntersectionResultsPointer: TYPE ~ REF ExternalIntersectionResultsObject;
ExternalIntersectionResultsObject:
TYPE ~
RECORD [
keys: WordsList,
results: WordsList
];
RawDefinitionList: TYPE ~ LIST OF ComponentPointer;
ComponentPointer: TYPE ~ REF ExternalComponentObject;
ExternalComponentObject:
TYPE ~
RECORD [
type: ATOM,
text: ROPE,
defaultFont: ATOM,
runs: RunList
];
RunList: TYPE ~ LIST OF RunPointer;
RunPointer: TYPE ~ REF ExternalRunObject;
ExternalRunObject:
TYPE ~
RECORD [
start: INTEGER,
length: INTEGER,
font: ATOM
];
SynonymPointer: TYPE ~ REF ExternalSynonymObject;
ExternalSynonymHandle: TYPE ~ REF ExternalSynonymObject;
ExternalSynonymObject:
TYPE ~
RECORD [
synonymList: SynonymClassesList,
externalSynonymSeqHandle: ExternalSynonymSeqHandle
];
ExternalSynonymSeqHandle: TYPE ~ REF ExternalSynonymSeqObject;
ExternalSynonymSeqObject: TYPE;
Operations
Languages: PROC [ user: User ]
RETURNS [ languages: LanguagesList ];
Analyze: PROC [ word: Word, language: Language ]
RETURNS [ analyses: Analyses ];
Translate: PROC [ wordNumber: WordNumber, language: Language ]
RETURNS [ word: Word ];
ProofRead: PROC [ paragraph: Paragraph, language: Language ]
RETURNS [ wordPosition: WordPosition ];
Corrections: PROC [ word: Word, language: Language ]
RETURNS [ wordsList: WordsList ];
Status: PROC
RETURNS [ statusInfo: ROPE ];
CountWords: PROC [ paragraph: Paragraph, language: Language ]
RETURNS [ wordCount: LONG INTEGER ];
Conjugate: PROC [ word: Word, form: Form, alternates: Alternates, language: Language ]
RETURNS [ conjugationsList: ConjugationsList];
Dictionaries: PROC [ user: User ]
RETURNS [ dictionariesList: DictionariesList ];
GetDefinition: PROC [ word: Word, dictionary: Dictionary ]
RETURNS [definition: Definition];
Pronunciation: PROC [ word: Word, dictionary: Dictionary ]
RETURNS [ wordPronounced: ROPE ];
GetLooks: PROC [ dictName: Dictionary ]
RETURNS [ looksList: LooksList];
Enumerate: PROC [ wordNumber: WordNumber, dictionary: Dictionary ]
RETURNS [definitionList: Definition];
EnumerateRaw: PROC [ wordNumber: WordNumber, codes: CodesList, dictionary: Dictionary ]
RETURNS [ rawDefinitionList: RawDefinitionList];
Synonyms: PROC [ word: Word, dictionary: Dictionary ]
RETURNS [ externalSynonymHandle: ExternalSynonymHandle];
SearchForWord: PROC [ unparsedClasses: UnparsedClasses, minKeyWords: MinKeyWords, minWord: MinWord, maxWord: MaxWord, dictionary: Dictionary ]
RETURNS [ intersectionResultsList: IntersectionResultsList];
NewSearchForWord: PROC [ externalSynonymHandle: ExternalSynonymHandle, minKeyWords: MinKeyWords, minWord: MinWord, maxWord: MaxWord, dictionary: Dictionary ] RETURNS [ intersectionResultsList: IntersectionResultsList];
RawSearchForWord: PROC [ externalSynonymHandle: ExternalSynonymHandle, minKeyWords: MinKeyWords, minWord: MinWord, maxWord: MaxWord, dictionary: Dictionary ] RETURNS [ rawIntersectionResultsList: RawIntersectionResultsList];
}.