package org.jetbrains.plugins.clojure.psi.stubs.elements.ns; import com.intellij.psi.PsiElement; import com.intellij.psi.stubs.StubElement; import com.intellij.lang.ASTNode; import com.intellij.util.io.StringRef; import org.jetbrains.plugins.clojure.psi.impl.ns.ClInNsImpl; import org.jetbrains.plugins.clojure.psi.api.ns.ClNs; import org.jetbrains.plugins.clojure.psi.stubs.api.ClNsStub; import org.jetbrains.plugins.clojure.parser.ClojureElementTypes; /** * @author ilyas */ public class ClCreateNsElementType extends ClNsElementTypeBase { public ClCreateNsElementType() { super("create-ns"); } public PsiElement createElement(ASTNode node) { return new ClInNsImpl(node); } public ClNs createPsi(ClNsStub stub) { return new ClInNsImpl(stub, ClojureElementTypes.CREATE_NS); } public ClNsStub createStub(ClNs psi, StubElement parentStub) { return new ClNsStub(parentStub, StringRef.fromString(psi.getDefinedName()), ClojureElementTypes.CREATE_NS, psi.getTextOffset()); } }