mirror of
https://github.com/sigmasternchen/xtext-core
synced 2025-03-16 16:58:56 +00:00
[generator 2] standardize stub-generating fragments
This commit is contained in:
parent
ce487deaf9
commit
310e88ab8b
10 changed files with 37 additions and 12 deletions
|
@ -0,0 +1,16 @@
|
|||
/*******************************************************************************
|
||||
* Copyright (c) 2015 itemis AG (http://www.itemis.eu) and others.
|
||||
* All rights reserved. This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License v1.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* http://www.eclipse.org/legal/epl-v10.html
|
||||
*******************************************************************************/
|
||||
package org.eclipse.xtext.xtext.generator
|
||||
|
||||
/**
|
||||
* @noimplement
|
||||
*/
|
||||
interface IGeneratesStub {
|
||||
def boolean isGenerateStub()
|
||||
def void setGenerateStub(boolean generateStub)
|
||||
}
|
|
@ -37,8 +37,9 @@ import static extension org.eclipse.xtext.xtext.generator.model.TypeReference.*
|
|||
import static extension org.eclipse.xtext.xtext.generator.util.GrammarUtil2.*
|
||||
import org.eclipse.xtend.lib.annotations.Accessors
|
||||
import org.eclipse.xtext.xtext.generator.AbstractXtextGeneratorFragment
|
||||
import org.eclipse.xtext.xtext.generator.IGeneratesStub
|
||||
|
||||
class Formatter2Fragment2 extends AbstractXtextGeneratorFragment {
|
||||
class Formatter2Fragment2 extends AbstractXtextGeneratorFragment implements IGeneratesStub {
|
||||
|
||||
@Inject FileAccessFactory fileAccessFactory
|
||||
|
||||
|
|
|
@ -36,8 +36,9 @@ import org.eclipse.xtext.xtext.generator.xbase.XbaseUsageDetector
|
|||
|
||||
import static extension org.eclipse.xtext.xtext.generator.model.TypeReference.*
|
||||
import org.eclipse.xtext.xtext.generator.AbstractXtextGeneratorFragment
|
||||
import org.eclipse.xtext.xtext.generator.IGeneratesStub
|
||||
|
||||
class GeneratorFragment2 extends AbstractXtextGeneratorFragment {
|
||||
class GeneratorFragment2 extends AbstractXtextGeneratorFragment implements IGeneratesStub {
|
||||
|
||||
@Inject CodeConfig codeConfig
|
||||
|
||||
|
@ -56,10 +57,10 @@ class GeneratorFragment2 extends AbstractXtextGeneratorFragment {
|
|||
boolean generateXtendMain = false
|
||||
|
||||
@Accessors(PUBLIC_SETTER)
|
||||
boolean generateStubs = true
|
||||
boolean generateStub = true
|
||||
|
||||
def boolean isGenerateStub() {
|
||||
!grammar.inheritsXbase && generateStubs
|
||||
override boolean isGenerateStub() {
|
||||
!grammar.inheritsXbase && generateStub
|
||||
}
|
||||
|
||||
def boolean isGenerateJavaMain() {
|
||||
|
|
|
@ -30,8 +30,9 @@ import static org.eclipse.xtext.GrammarUtil.*
|
|||
import static extension org.eclipse.xtext.xtext.generator.model.TypeReference.*
|
||||
import static extension org.eclipse.xtext.xtext.generator.util.GrammarUtil2.*
|
||||
import org.eclipse.xtext.xtext.generator.AbstractXtextGeneratorFragment
|
||||
import org.eclipse.xtext.xtext.generator.IGeneratesStub
|
||||
|
||||
class ImportNamespacesScopingFragment2 extends AbstractXtextGeneratorFragment {
|
||||
class ImportNamespacesScopingFragment2 extends AbstractXtextGeneratorFragment implements IGeneratesStub {
|
||||
|
||||
@Inject extension XtextGeneratorNaming
|
||||
@Inject extension XbaseUsageDetector
|
||||
|
|
|
@ -65,8 +65,9 @@ import static extension org.eclipse.xtext.xtext.generator.model.TypeReference.*
|
|||
import static extension org.eclipse.xtext.xtext.generator.util.GenModelUtil2.*
|
||||
import org.eclipse.xtext.serializer.analysis.SerializationContext
|
||||
import org.eclipse.xtext.xtext.generator.AbstractXtextGeneratorFragment
|
||||
import org.eclipse.xtext.xtext.generator.IGeneratesStub
|
||||
|
||||
class SerializerFragment2 extends AbstractXtextGeneratorFragment {
|
||||
class SerializerFragment2 extends AbstractXtextGeneratorFragment implements IGeneratesStub {
|
||||
|
||||
private static def <K, V> Map<K, V> toMap(Iterable<Pair<K, V>> items) {
|
||||
val result = newLinkedHashMap
|
||||
|
|
|
@ -28,6 +28,7 @@ import org.eclipse.xtext.xtext.generator.model.TypeReference
|
|||
import static extension org.eclipse.xtext.GrammarUtil.*
|
||||
import static extension org.eclipse.xtext.xtext.generator.util.GrammarUtil2.*
|
||||
import org.eclipse.xtext.xtext.generator.AbstractXtextGeneratorFragment
|
||||
import org.eclipse.xtext.xtext.generator.IGeneratesStub
|
||||
|
||||
/**
|
||||
* Contributes the 'Abstract...ProposalProvider' and '...ProposalProvider' stub,
|
||||
|
@ -35,7 +36,7 @@ import org.eclipse.xtext.xtext.generator.AbstractXtextGeneratorFragment
|
|||
*
|
||||
* @author Christian Schneider - Initial contribution and API
|
||||
*/
|
||||
class ContentAssistFragment2 extends AbstractXtextGeneratorFragment {
|
||||
class ContentAssistFragment2 extends AbstractXtextGeneratorFragment implements IGeneratesStub {
|
||||
|
||||
@Inject
|
||||
extension XtextGeneratorNaming
|
||||
|
|
|
@ -19,13 +19,14 @@ import org.eclipse.xtext.xtext.generator.xbase.XbaseUsageDetector
|
|||
|
||||
import static extension org.eclipse.xtext.GrammarUtil.*
|
||||
import org.eclipse.xtext.xtext.generator.AbstractXtextGeneratorFragment
|
||||
import org.eclipse.xtext.xtext.generator.IGeneratesStub
|
||||
|
||||
/**
|
||||
* Contributes the Labeling provider stub, either in Xtend or Java language.
|
||||
*
|
||||
* @author Christian Schneider - Initial contribution and API
|
||||
*/
|
||||
class LabelProviderFragment2 extends AbstractXtextGeneratorFragment {
|
||||
class LabelProviderFragment2 extends AbstractXtextGeneratorFragment implements IGeneratesStub {
|
||||
|
||||
private static val XBASE_LABEL_PROVIDER =
|
||||
"org.eclipse.xtext.xbase.ui.labeling.XbaseLabelProvider"
|
||||
|
|
|
@ -18,11 +18,12 @@ import org.eclipse.xtext.xtext.generator.model.TypeReference
|
|||
import static extension org.eclipse.xtext.xtext.generator.model.TypeReference.typeRef
|
||||
import org.eclipse.xtext.xtext.generator.CodeConfig
|
||||
import org.eclipse.xtext.xtext.generator.AbstractXtextGeneratorFragment
|
||||
import org.eclipse.xtext.xtext.generator.IGeneratesStub
|
||||
|
||||
/**
|
||||
* @author Christian Schneider - Initial contribution and API
|
||||
*/
|
||||
class OutlineTreeProviderFragment2 extends AbstractXtextGeneratorFragment {
|
||||
class OutlineTreeProviderFragment2 extends AbstractXtextGeneratorFragment implements IGeneratesStub {
|
||||
|
||||
@Inject CodeConfig codeConfig
|
||||
@Inject FileAccessFactory fileAccessFactory
|
||||
|
|
|
@ -20,13 +20,14 @@ import org.eclipse.xtext.xtext.generator.validation.ValidatorNaming
|
|||
import static extension org.eclipse.xtext.GrammarUtil.*
|
||||
import static extension org.eclipse.xtext.xtext.generator.util.GrammarUtil2.*
|
||||
import org.eclipse.xtext.xtext.generator.AbstractXtextGeneratorFragment
|
||||
import org.eclipse.xtext.xtext.generator.IGeneratesStub
|
||||
|
||||
/**
|
||||
* Contributes the Quickfix provider stub, either in Xtend or Java language.
|
||||
*
|
||||
* @author Christian Schneider - Initial contribution and API
|
||||
*/
|
||||
class QuickfixProviderFragment2 extends AbstractXtextGeneratorFragment {
|
||||
class QuickfixProviderFragment2 extends AbstractXtextGeneratorFragment implements IGeneratesStub {
|
||||
|
||||
@Inject
|
||||
extension XtextGeneratorNaming
|
||||
|
|
|
@ -27,8 +27,9 @@ import static org.eclipse.xtext.GrammarUtil.*
|
|||
import static extension org.eclipse.xtext.xtext.generator.model.TypeReference.*
|
||||
import static extension org.eclipse.xtext.xtext.generator.util.GrammarUtil2.*
|
||||
import org.eclipse.xtext.xtext.generator.AbstractXtextGeneratorFragment
|
||||
import org.eclipse.xtext.xtext.generator.IGeneratesStub
|
||||
|
||||
class ValidatorFragment2 extends AbstractXtextGeneratorFragment {
|
||||
class ValidatorFragment2 extends AbstractXtextGeneratorFragment implements IGeneratesStub {
|
||||
|
||||
@Inject extension ValidatorNaming
|
||||
@Inject extension XtextGeneratorNaming
|
||||
|
|
Loading…
Reference in a new issue