package jetbrains.mps.lang.scopes.runtime; /*Generated by MPS */ import jetbrains.mps.scope.Scope; import org.jetbrains.mps.openapi.model.SNode; import org.jetbrains.mps.openapi.language.SAbstractConcept; import jetbrains.mps.scope.CompositeScope; public class CompositeWithParentScope { public static Scope from(Scope original, SNode node, SAbstractConcept kind) { // todo: from? Scope nextScope = ScopeUtils.parentScope(node, kind); return (nextScope == null ? original : new CompositeScope(original, nextScope)); } public static Scope from(Iterable<SNode> elements, SNode node, SAbstractConcept kind) { return (elements != null ? from(new NamedElementsScope(elements), node, kind) : ScopeUtils.parentScope(node, kind)); } public static Scope from(SNode element, SNode node, SAbstractConcept kind) { return ((element != null) ? from(new NamedElementsScope(element), node, kind) : ScopeUtils.parentScope(node, kind)); } }