Package com.oracle.truffle.r.runtime.env

Examples of com.oracle.truffle.r.runtime.env.REnvironment$Namespace


        }

        @Specialization
        protected REnvironment doAttach(@SuppressWarnings("unused") RNull what, int pos, String name) {
            controlVisibility();
            REnvironment env = new REnvironment.NewEnv(name);
            doAttachEnv(pos, env);
            return env;
        }
View Full Code Here


            controlVisibility();
            return doAttachEnv(what, (int) pos, name);
        }

        REnvironment doAttachEnv(REnvironment what, int pos, String name) {
            REnvironment env = new REnvironment.NewEnv(name);
            RStringVector names = what.ls(true, null);
            for (int i = 0; i < names.getLength(); i++) {
                String key = names.getDataAt(i);
                Object value = what.get(key);
                // TODO copy?
                env.safePut(key, value);
            }
            doAttachEnv(pos, env);
            return env;

        }
View Full Code Here

            controlVisibility();
            return doAttachList(what, (int) pos, name);
        }

        REnvironment doAttachList(RList what, int pos, String name) {
            REnvironment env = new REnvironment.NewEnv(name);
            RStringVector names = (RStringVector) what.getNames();
            for (int i = 0; i < names.getLength(); i++) {
                env.safePut(names.getDataAt(i), what.getDataAt(i));
            }
            doAttachEnv(pos, env);
            return env;
        }
View Full Code Here

        return new RNode[]{ConstantNode.create(RMissing.instance), ConstantNode.create(RMissing.instance), ConstantNode.create(RMissing.instance), ConstantNode.create(RMissing.instance)};
    }

    @Specialization
    protected Object doDelayedAssign(VirtualFrame frame, RAbstractStringVector nameVec, RPromise value, @SuppressWarnings("unused") RMissing evalEnv, @SuppressWarnings("unused") RMissing assignEnv) {
        REnvironment curEnv = curEnv(frame);
        return doDelayedAssign(nameVec, value, curEnv, curEnv);
    }
View Full Code Here

    @Specialization(guards = "doesInherit")
    @SuppressWarnings("unused")
    protected Object assignInherit(String x, Object value, REnvironment pos, RMissing envir, byte inherits, byte immediate) {
        controlVisibility();
        REnvironment env = pos;
        while (env != null) {
            if (env.get(x) != null) {
                break;
            }
            env = env.getParent();
        }
        try {
            if (env != null) {
                env.put(x, value);
            } else {
                REnvironment.globalEnv().put(x, value);
            }
        } catch (PutException ex) {
            throw RError.error(getEncapsulatingSourceSection(), ex);
View Full Code Here

 
  @Test
  public void testOutputElementNamespaces() {
    String txt = "<ns:root xmlns:ns=\"myns\" xmlns:ans=\"attributens\" xmlns:two=\"two\" ans:att=\"val\"/>";
    Element emt = new Element("root", Namespace.getNamespace("ns", "myns"));
    Namespace ans = Namespace.getNamespace("ans", "attributens");
    emt.setAttribute(new Attribute("att", "val", ans));
    emt.addNamespaceDeclaration(Namespace.getNamespace("two", "two"));
    checkOutput(emt,
        txt, txt,txt, txt, txt);
  }
View Full Code Here

    }
   
    @Test
    public void testOutputDocumentNamespaces() {
    Element emt = new Element("root", Namespace.getNamespace("ns", "myns"));
    Namespace ans = Namespace.getNamespace("ans", "attributens");
    emt.addNamespaceDeclaration(ans);
    emt.addNamespaceDeclaration(Namespace.getNamespace("two", "two"));
    emt.setAttribute(new Attribute("att", "val", ans));
    emt.addContent(new Element("child", Namespace.getNamespace("", "childuri")));
    Document doc = new Document(emt);
View Full Code Here

    }
   
    @Test
    public void testRTOutputElementNamespaces() {
    Element emt = new Element("root", Namespace.getNamespace("ns", "myns"));
    Namespace ans = Namespace.getNamespace("ans", "attributens");
    emt.addNamespaceDeclaration(ans);
    emt.addNamespaceDeclaration(Namespace.getNamespace("two", "two"));
    emt.setAttribute(new Attribute("att", "val", ans));
    emt.addContent(new Element("child", Namespace.getNamespace("", "childns")));
    roundTripElement(emt);
View Full Code Here

      // if there is any printable content, or if expandempty is set
      // then we must expand.
      boolean expandit = walker != null || fstack.isExpandEmptyElements();
     
      if (expandit) {
        Namespace ns = element.getNamespace();
        if (ns == Namespace.NO_NAMESPACE) {
          out.writeStartElement(element.getName());
        } else if ("".equals(ns.getPrefix())) {
          out.writeStartElement(ns.getURI(), element.getName());
        } else {
          out.writeStartElement(ns.getPrefix(), element.getName(), ns.getURI());
        }
       
        // Print the element's namespace, if appropriate
        for (final Namespace nsd : nstack.addedForward()) {
          printNamespace(out, fstack, nsd);
        }
 
        // Print out attributes
        if (element.hasAttributes()) {
          for (final Attribute attribute : element.getAttributes()) {
            printAttribute(out, fstack, attribute);
          }
        }
       
        // OK, now we print out the meat of the Element
        if (walker != null) {
          // we need to re-create the walker/fstack.
          fstack.push();
          try {
            fstack.setTextMode(textmode);
            if (!walker.isAllText() && fstack.getPadBetween() != null) {
              // we need to newline/indent
              final String indent = fstack.getPadBetween();
              printText(out, fstack, new Text(indent));
            }
           
            printContent(out, fstack, nstack, walker);
           
            if (!walker.isAllText() && fstack.getPadLast() != null) {
              // we need to newline/indent
              final String indent = fstack.getPadLast();
              printText(out, fstack, new Text(indent));
            }
          } finally {
            fstack.pop();
          }
        }
     
        out.writeEndElement();
       
       
      } else {
        // implies:
        //      fstack.isExpandEmpty... is false
        // and       content.isEmpty()
        //       or      textonly == true
        //           and preserve == false
        //           and whiteonly == true
       
        Namespace ns = element.getNamespace();
        if (ns == Namespace.NO_NAMESPACE) {
          out.writeEmptyElement(element.getName());
        } else if ("".equals(ns.getPrefix())) {
          out.writeEmptyElement("", element.getName(), ns.getURI());
        } else {
          out.writeEmptyElement(ns.getPrefix(), element.getName(), ns.getURI());
        }
       
        // Print the element's namespace, if appropriate
        for (final Namespace nsd : nstack.addedForward()) {
          printNamespace(out, fstack, nsd);
View Full Code Here

    if (!attribute.isSpecified() && fstack.isSpecifiedAttributesOnly()) {
      return;
    }
   
    final Namespace ns = attribute.getNamespace();
    if (ns == Namespace.NO_NAMESPACE) {
      out.writeAttribute(attribute.getName(), attribute.getValue());
    } else {
      out.writeAttribute(ns.getPrefix(), ns.getURI(),
          attribute.getName(), attribute.getValue());
    }
  }
View Full Code Here

TOP

Related Classes of com.oracle.truffle.r.runtime.env.REnvironment$Namespace

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.