Skip to content
StephanErb edited this page Aug 23, 2011 · 3 revisions

Package Structure

com.sap.furcas.ide.editor: Editor base classes for textual model editors, the content assist and other additional editor features.
com.sap.furcas.ide.dslproject: An Eclipse nature and an Eclipse builder. Listens for resource changes of files with the .tcs-file-extension. If such a change occurs, uses a TCSParser found in com.sap.furcsa.parser.tcs to parse the syntax definition into a model. Uses com.sap.furcas.parsergenerator to construct a DSL parser for the given syntax.
com.sap.furcas.ide.projectwizard: Wizard to create and configure specialized projects for the creation of DSLs. Generates a default TCS files and creates the language specific editor.
com.sap.furcas.modeladaptation : EMF model injector / adapter implementations. These are used by the parser in order to inspect and to create EMF models.
com.sap.furcas.runtime.parser : Functionality required at (editor) runtime to parse DSL coding and to construct the domain models. Als includes the parsing observer that is used to instantiate TextBlocks models (ParserTextBlocksHandler).
com.sap.furcas.runtime.parser.incremental : Addition to com.sap.furcas.runtime.parser that enables incremental parsing and lexing. That way, models don't have to be fully recreated upon reparsing of a textual representation. Instead, only the actual modifications are propagated into the domain model.
com.sap.furcas.runtime.referenceresolving : OCL Impact Analysis (IA)-based model updaters. They are used to listen to model changes and to update other parts of the domain model according to the rules defined by the TCS syntax.
com.sap.furcas.runtime.unparser : PrettyPrinter used to serialize models as plain text or as TextBlocks models.
com.sap.furcas.metamodel.*: TCS und TextBlocks metamodel and generated classes.
com.sap.furcas.runtime.tcs: Utility classes operating on TCS syntax models. Most of them for information retrieval. It is required as the TCS metamodel defines a simple datamodel without any behavior.
com.sap.furcas.runtime.textblocks: Utility classes operating on TextBlocks models, including the ShortPrettyPrinter and the TextBlocksModel. The ShortPrettyPrinter can retrieve token values from the domain model according to the rules defined in the syntax. The TextBlocksModel enables textual modifcations of the TextBlock tree structures. It marks modified regions so that those can be found by com.sap.furcas.runtime.parser.incremental. The project is required as the TextBlocks metamodel defines a simple datamodel without any behavior.
com.sap.furcas.parsergenerator : Generater that derives an ANTLR based parser from a TCS syntax model. Given a TCS syntax (in model form) this package generates a *.g grammar file and feeds it to ANTLR to generate a parser and a lexer. The generated parsers are based on com.sap.furcas.runtime.parser.
com.sap.furcas.parser.tcs : A bootstrapped parser that can parser TCS files. It is defined within the TCS.tcs.
com.sap.furcas.runtime.common: Common interfaces and exceptions, including the model injector / adapter interfaces used by the other runtime packages.
com.sap.furcas.testutils : Common test base classes and test fixtures.
Clone this wiki locally