/** * generated by Xtext 2.10.0 */ package org.thingml.xtext.formatting2; import com.google.inject.Inject; import java.util.Arrays; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EObject; import org.eclipse.xtext.formatting2.AbstractFormatter2; import org.eclipse.xtext.formatting2.IFormattableDocument; import org.eclipse.xtext.resource.XtextResource; import org.eclipse.xtext.xbase.lib.Extension; import org.thingml.xtext.services.ThingMLGrammarAccess; import org.thingml.xtext.thingML.Configuration; import org.thingml.xtext.thingML.Import; import org.thingml.xtext.thingML.PlatformAnnotation; import org.thingml.xtext.thingML.PrimitiveType; import org.thingml.xtext.thingML.Protocol; import org.thingml.xtext.thingML.ThingMLModel; import org.thingml.xtext.thingML.Type; @SuppressWarnings("all") public class ThingMLFormatter extends AbstractFormatter2 { @Inject @Extension private ThingMLGrammarAccess _thingMLGrammarAccess; protected void _format(final ThingMLModel thingMLModel, @Extension final IFormattableDocument document) { EList<Import> _imports = thingMLModel.getImports(); for (final Import imports : _imports) { document.<Import>format(imports); } EList<Type> _types = thingMLModel.getTypes(); for (final Type types : _types) { document.<Type>format(types); } EList<Protocol> _protocols = thingMLModel.getProtocols(); for (final Protocol protocols : _protocols) { document.<Protocol>format(protocols); } EList<Configuration> _configs = thingMLModel.getConfigs(); for (final Configuration configs : _configs) { document.<Configuration>format(configs); } } protected void _format(final PrimitiveType primitiveType, @Extension final IFormattableDocument document) { EList<PlatformAnnotation> _annotations = primitiveType.getAnnotations(); for (final PlatformAnnotation annotations : _annotations) { document.<PlatformAnnotation>format(annotations); } } public void format(final Object primitiveType, final IFormattableDocument document) { if (primitiveType instanceof XtextResource) { _format((XtextResource)primitiveType, document); return; } else if (primitiveType instanceof PrimitiveType) { _format((PrimitiveType)primitiveType, document); return; } else if (primitiveType instanceof ThingMLModel) { _format((ThingMLModel)primitiveType, document); return; } else if (primitiveType instanceof EObject) { _format((EObject)primitiveType, document); return; } else if (primitiveType == null) { _format((Void)null, document); return; } else if (primitiveType != null) { _format(primitiveType, document); return; } else { throw new IllegalArgumentException("Unhandled parameter types: " + Arrays.<Object>asList(primitiveType, document).toString()); } } }