Search in sources :

Example 6 with ExportDeclaration

use of org.eclipse.n4js.n4JS.ExportDeclaration in project n4js by eclipse.

the class ExportableElementImpl method getExportedName.

/**
 * <!-- begin-user-doc -->
 * <!-- end-user-doc -->
 * @generated
 */
public String getExportedName() {
    boolean _isExported = this.isExported();
    if (_isExported) {
        EObject _eContainer = this.eContainer();
        final ExportDeclaration exportDecl = ((ExportDeclaration) _eContainer);
        boolean _isDefaultExport = exportDecl.isDefaultExport();
        if (_isDefaultExport) {
            return "default";
        }
        final ExportableElement me = this;
        String _switchResult = null;
        boolean _matched = false;
        if (me instanceof NamedElement) {
            _matched = true;
            _switchResult = ((NamedElement) me).getName();
        }
        if (!_matched) {
            if (me instanceof IdentifiableElement) {
                _matched = true;
                _switchResult = ((IdentifiableElement) me).getName();
            }
        }
        return _switchResult;
    }
    return null;
}
Also used : ExportableElement(org.eclipse.n4js.n4JS.ExportableElement) EObject(org.eclipse.emf.ecore.EObject) IdentifiableElement(org.eclipse.n4js.ts.types.IdentifiableElement) ExportDeclaration(org.eclipse.n4js.n4JS.ExportDeclaration) NamedElement(org.eclipse.n4js.n4JS.NamedElement)

Example 7 with ExportDeclaration

use of org.eclipse.n4js.n4JS.ExportDeclaration in project n4js by eclipse.

the class N4MemberAnnotationListImpl method getAllAnnotations.

/**
 * <!-- begin-user-doc -->
 * <!-- end-user-doc -->
 * @generated
 */
public EList<Annotation> getAllAnnotations() {
    final BasicEList<Annotation> result = XcoreCollectionLiterals.<Annotation>newBasicEList();
    final EObject parent = this.eContainer();
    if ((parent instanceof ExportDeclaration)) {
        EList<Annotation> _annotations = ((ExportDeclaration) parent).getAnnotations();
        Iterables.<Annotation>addAll(result, _annotations);
    }
    EList<Annotation> _annotations_1 = this.getAnnotations();
    Iterables.<Annotation>addAll(result, _annotations_1);
    return result;
}
Also used : EObject(org.eclipse.emf.ecore.EObject) InternalEObject(org.eclipse.emf.ecore.InternalEObject) ExportDeclaration(org.eclipse.n4js.n4JS.ExportDeclaration) Annotation(org.eclipse.n4js.n4JS.Annotation)

Example 8 with ExportDeclaration

use of org.eclipse.n4js.n4JS.ExportDeclaration in project n4js by eclipse.

the class ScriptFactory method getScriptElementAt.

private static ScriptElement getScriptElementAt(Script script, int i) {
    EList<ScriptElement> scriptElems = script.getScriptElements();
    ScriptElement scriptElement = scriptElems.get(i);
    if (scriptElement instanceof ExportDeclaration) {
        ExportableElement expElem = ((ExportDeclaration) scriptElement).getExportedElement();
        if (expElem instanceof ExportedVariableStatement) {
            scriptElement = (ExportedVariableStatement) expElem;
        }
    }
    return scriptElement;
}
Also used : ExportableElement(org.eclipse.n4js.n4JS.ExportableElement) ScriptElement(org.eclipse.n4js.n4JS.ScriptElement) ExportDeclaration(org.eclipse.n4js.n4JS.ExportDeclaration) ExportedVariableStatement(org.eclipse.n4js.n4JS.ExportedVariableStatement)

Example 9 with ExportDeclaration

use of org.eclipse.n4js.n4JS.ExportDeclaration in project n4js by eclipse.

the class VariableDeclarationImpl method getAllAnnotations.

/**
 * <!-- begin-user-doc -->
 * <!-- end-user-doc -->
 * @generated
 */
public EList<Annotation> getAllAnnotations() {
    final BasicEList<Annotation> result = XcoreCollectionLiterals.<Annotation>newBasicEList();
    final EObject parent = this.eContainer();
    if ((parent instanceof ExportDeclaration)) {
        EList<Annotation> _annotations = ((ExportDeclaration) parent).getAnnotations();
        Iterables.<Annotation>addAll(result, _annotations);
    }
    EList<Annotation> _annotations_1 = this.getAnnotations();
    Iterables.<Annotation>addAll(result, _annotations_1);
    return result;
}
Also used : EObject(org.eclipse.emf.ecore.EObject) InternalEObject(org.eclipse.emf.ecore.InternalEObject) ExportDeclaration(org.eclipse.n4js.n4JS.ExportDeclaration) Annotation(org.eclipse.n4js.n4JS.Annotation)

Example 10 with ExportDeclaration

use of org.eclipse.n4js.n4JS.ExportDeclaration in project n4js by eclipse.

the class AnnotationDefinition method getAllAnnotations.

private <T extends EObject> Iterable<T> getAllAnnotations(final EAnnotatableWrapper<T> element) {
    final Iterable<T> annotations = getAllOwnedAnnotations(element);
    if (!transitive || null == element) {
        return annotations;
    }
    EAnnotatableWrapper<T> container = element.getContainerAnnotatable();
    if (container == null) {
        return annotations;
    }
    if (container.annotatable instanceof ExportDeclaration) {
        container = container.getContainerAnnotatable();
    }
    if (repeatable) {
        return concat(annotations, getAllAnnotations(container));
    } else {
        final T annotation = getFirst(annotations, null);
        return null != annotation ? singletonList(annotation) : getAllAnnotations(container);
    }
}
Also used : TYPE_DEFINING_ELEMENT(org.eclipse.n4js.n4JS.N4JSPackage.Literals.TYPE_DEFINING_ELEMENT) EXPORTABLE_ELEMENT(org.eclipse.n4js.n4JS.N4JSPackage.Literals.EXPORTABLE_ELEMENT) SCRIPT(org.eclipse.n4js.n4JS.N4JSPackage.Literals.SCRIPT) ExportDeclaration(org.eclipse.n4js.n4JS.ExportDeclaration)

Aggregations

ExportDeclaration (org.eclipse.n4js.n4JS.ExportDeclaration)24 EObject (org.eclipse.emf.ecore.EObject)20 InternalEObject (org.eclipse.emf.ecore.InternalEObject)13 ExportableElement (org.eclipse.n4js.n4JS.ExportableElement)8 Script (org.eclipse.n4js.n4JS.Script)8 Annotation (org.eclipse.n4js.n4JS.Annotation)7 IdentifiableElement (org.eclipse.n4js.ts.types.IdentifiableElement)7 NamedElement (org.eclipse.n4js.n4JS.NamedElement)6 ExportedVariableDeclaration (org.eclipse.n4js.n4JS.ExportedVariableDeclaration)3 ExportedVariableStatement (org.eclipse.n4js.n4JS.ExportedVariableStatement)3 FunctionDeclaration (org.eclipse.n4js.n4JS.FunctionDeclaration)3 VariableDeclaration (org.eclipse.n4js.n4JS.VariableDeclaration)3 Block (org.eclipse.n4js.n4JS.Block)2 CatchBlock (org.eclipse.n4js.n4JS.CatchBlock)2 ExportSpecifier (org.eclipse.n4js.n4JS.ExportSpecifier)2 Expression (org.eclipse.n4js.n4JS.Expression)2 FormalParameter (org.eclipse.n4js.n4JS.FormalParameter)2 LiteralOrComputedPropertyName (org.eclipse.n4js.n4JS.LiteralOrComputedPropertyName)2 N4FieldDeclaration (org.eclipse.n4js.n4JS.N4FieldDeclaration)2 ParameterizedCallExpression (org.eclipse.n4js.n4JS.ParameterizedCallExpression)2