Ignore:
Timestamp:
10/18/15 23:05:09 (9 years ago)
Author:
Mateusz Poszwa
Message:

Ported Framclipse to Xtext 2.8.4

File:
1 edited

Legend:

Unmodified
Added
Removed
  • java/Framclipse/com.framsticks.framclipse/src/com/framsticks/framclipse/GenerateFramScript.mwe2

    r437 r438  
    66
    77var grammarURI = "classpath:/com/framsticks/framclipse/FramScript.xtext"
    8 var file.extensions = "neuro, expdef, style, show, script, inc"
     8var fileExtensions = "neuro, expdef, style, show, script, inc"
    99var projectName = "com.framsticks.framclipse"
    1010var runtimeProject = "../${projectName}"
     11//var generateXtendStub = true
     12var encoding = "UTF-8"
    1113
    1214Workflow {
    1315    bean = StandaloneSetup {
     16                scanClassPath = true
    1417                platformUri = "${runtimeProject}/.."
     18                // The following two lines can be removed, if Xbase is not used.
     19//              registerGeneratedEPackage = "org.eclipse.xtext.xbase.XbasePackage"
     20//              registerGenModelFile = "platform:/resource/org.eclipse.xtext.xbase/model/Xbase.genmodel"
    1521        }
    1622       
     
    2026       
    2127        component = DirectoryCleaner {
     28                directory = "${runtimeProject}/model/generated"
     29        }
     30       
     31        component = DirectoryCleaner {
    2232                directory = "${runtimeProject}.ui/src-gen"
    2333        }
    24        
     34/*
     35        component = DirectoryCleaner {
     36                directory = "${runtimeProject}.tests/src-gen"
     37        }
     38*/
    2539        component = Generator {
    2640                pathRtProject = runtimeProject
    2741                pathUiProject = "${runtimeProject}.ui"
     42//              pathTestProject = "${runtimeProject}.tests"
    2843                projectNameRt = projectName
    2944                projectNameUi = "${projectName}.ui"
    30                
    31                 language = {
     45                encoding = encoding
     46                language = auto-inject {
    3247                        uri = grammarURI
    33                         fileExtensions = file.extensions
    3448                       
    3549                        // Java API to access grammar elements (required by several other fragments)
    36                         fragment = grammarAccess.GrammarAccessFragment {}
     50                        fragment = grammarAccess.GrammarAccessFragment auto-inject {}
    3751                       
    38                         // generates Java API for the generated EPackages
    39                         fragment = ecore.EcoreGeneratorFragment {
     52                        // generates Java API for the generated EPackages
     53                        fragment = ecore.EMFGeneratorFragment auto-inject {}
     54/*                      fragment = ecore.EcoreGeneratorFragment {
    4055                        // referencedGenModels = "uri to genmodel, uri to next genmodel"
    4156                        }
     57*/
    4258                       
    43                         // the serialization component
    44                         fragment = parseTreeConstructor.ParseTreeConstructorFragment {}
     59                        // the old serialization component
     60                        // fragment = parseTreeConstructor.ParseTreeConstructorFragment auto-inject {}
    4561                       
    46                         // a custom ResourceFactory for use with EMF
    47                         fragment = resourceFactory.ResourceFactoryFragment {
    48                                 fileExtensions = file.extensions
    49                         }
    50                                
    51                         // the following fragment tries to use the Antlr Generator fragment which can be installed via update manager from http://download.itemis.com/updates/
    52                         fragment = AntlrDelegatingFragment {}
    53                        
    54                         // java-based API for validation
    55                         fragment = validation.JavaValidatorFragment {
    56                 composedCheck = "org.eclipse.xtext.validation.ImportUriValidator"
    57                 composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
    58                 // registerForImportedPackages = true
    59             }
    60            
    61                         // scoping and exporting API
    62                         /*
    63                         fragment = scoping.ImportURIScopingFragment {}
    64                         fragment = exporting.SimpleNamesFragment {}
    65                         */
    66                        
    67                         // scoping and exporting API
    68                         fragment = scoping.ImportURIScopingFragment {}
    69                         fragment = exporting.QualifiedNamesFragment {}
    70                        
    71                         // formatter API
    72                         fragment = formatting.FormatterFragment {}
    73 
    74                         // labeling API
    75                         fragment = labeling.LabelProviderFragment {}
    76 
    77                         // outline API
    78                         fragment = outline.TransformerFragment {}
    79                         fragment = outline.OutlineNodeAdapterFactoryFragment {}
    80                         fragment = outline.QuickOutlineFragment {}
    81 
    82                         // java-based API for content assistance
    83                         fragment = contentAssist.JavaBasedContentAssistFragment {}
    84                        
    85                         // the following fragment tries to use the Antlr based content assist
    86                         //     fragment which can be downloaded from http://www.itemis.com
    87                         //     and will be ignored if it's not available.
    88                         fragment = DelegatingGeneratorFragment {
    89                                 delegate = "de.itemis.xtext.antlr.XtextAntlrUiGeneratorFragment"
    90                                 message="You are generating without ANTLR. It is highly recommended to download and use the plugin \'de.itemis.xtext.antlr\' \n\t using the update site http:\//download.itemis.com/updates/."
     62                        // serializer 2.0
     63                        fragment = serializer.SerializerFragment auto-inject {
     64                                generateStub = false
    9165                        }
    9266
    93                         fragment = builder.BuilderIntegrationFragment {}
     67                        // a custom ResourceFactory for use with EMF
     68                        fragment = resourceFactory.ResourceFactoryFragment auto-inject {}
     69                               
     70                        // The antlr parser generator fragment.
     71                        fragment = parser.antlr.XtextAntlrGeneratorFragment auto-inject {
     72                        //  options = {
     73                        //        backtrack = true
     74                        //  }
     75                        }
     76/*
     77                        // Xtend-based API for validation
     78                        fragment = validation.ValidatorFragment auto-inject {
     79*/
     80                        // Java-based API for validation
     81                        fragment = validation.JavaValidatorFragment auto-inject {
     82                        //      composedCheck = "org.eclipse.xtext.validation.ImportUriValidator"
     83                        //      composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
     84                        }
    9485
    95                         // project wizard (optional)
    96                         /*
    97                         fragment = projectWizard.SimpleProjectWizardFragment {
    98                                 generatorProjectName = "${projectName}.generator"
    99                                 modelFileExtension = file.extensions
    100                         }
    101                         */
     86                        // old scoping and exporting API
     87                        fragment = scoping.ImportURIScopingFragment auto-inject {}
     88                        fragment = exporting.SimpleNamesFragment auto-inject {}
     89
     90                        // scoping and exporting API
     91//                      fragment = scoping.ImportNamespacesScopingFragment auto-inject {}
     92//                      fragment = exporting.QualifiedNamesFragment auto-inject {}
     93//                      fragment = builder.BuilderIntegrationFragment auto-inject {}
     94
     95                        // generator API
     96//                      fragment = generator.GeneratorFragment auto-inject {}
    10297                       
    103                         // quickfix API
    104                         fragment = quickfix.QuickfixProviderFragment {}                 
     98                        // formatter API
     99                        fragment = formatting.FormatterFragment auto-inject {}
     100
     101                        // labeling API
     102                        fragment = labeling.LabelProviderFragment auto-inject {}
     103
     104                        // outline API
     105//                      fragment = outline.TransformerFragment {}
     106//                      fragment = outline.OutlineNodeAdapterFactoryFragment {}
     107                        fragment = outline.OutlineTreeProviderFragment auto-inject {}
     108                        fragment = outline.QuickOutlineFragment auto-inject {}
     109
     110                        // java-based API for content assistance
     111                        fragment = contentAssist.JavaBasedContentAssistFragment {}
     112/*
     113                        // content assist API
     114                        fragment = contentAssist.ContentAssistFragment auto-inject {}
     115*/
     116                        // generates a more lightweight Antlr parser and lexer tailored for content assist
     117                        fragment = parser.antlr.XtextAntlrUiGeneratorFragment auto-inject {}
     118/*
     119                        // generates junit test support classes into Generator#pathTestProject
     120                        fragment = junit.Junit4Fragment auto-inject {}
     121
     122                        // rename refactoring
     123                        fragment = refactoring.RefactorElementNameFragment auto-inject {}
     124
     125                        // provides the necessary bindings for java types integration
     126                        fragment = types.TypesGeneratorFragment auto-inject {}
     127
     128                        // generates the required bindings only if the grammar inherits from Xbase
     129                        fragment = xbase.XbaseGeneratorFragment auto-inject {}
     130                       
     131                        // generates the required bindings only if the grammar inherits from Xtype
     132                        fragment = xbase.XtypeGeneratorFragment auto-inject {}
     133
     134                        // provides a preference page for template proposals
     135                        fragment = templates.CodetemplatesGeneratorFragment auto-inject {}
     136
     137                        // provides a compare view
     138                        fragment = compare.CompareFragment auto-inject {}
     139*/
     140                        // quickfix API
     141                        fragment = quickfix.QuickfixProviderFragment auto-inject {}
    105142                }
    106143        }
Note: See TracChangeset for help on using the changeset viewer.