Package org.eclipse.imp.pdb.facts

Examples of org.eclipse.imp.pdb.facts.ISetWriter.done()


   
    for(IValue v : lst){
      w.insert(v);
    }
   
    return w.done();
  }

  public IValue toString(IList lst)
  //@doc{toString -- convert a list to a string}
  {
View Full Code Here


    Iterator<Entry<IValue,IValue>> iter = M.entryIterator();
    while (iter.hasNext()) {
      Entry<IValue,IValue> entry = iter.next();
      w.insert(entry.getKey());
    }
    return w.done();
  }

  public IValue getOneFrom(IMap m
  //@doc{getOneFrom -- return arbitrary key of a map}
  {
View Full Code Here

    Iterator<Entry<IValue,IValue>> iter = M.entryIterator();
    while (iter.hasNext()) {
      Entry<IValue,IValue> entry = iter.next();
      w.insert(entry.getValue());
    }
    return w.done();
  }

  public IValue size(IMap M)
  {
    return values.integer(M.size());
View Full Code Here

    Iterator<Entry<IValue,IValue>> iter = M.entryIterator();
    while (iter.hasNext()) {
      Entry<IValue,IValue> entry = iter.next();
      w.insert(values.tuple(entry.getKey(), entry.getValue()));
    }
    return w.done();
  }
   
  public IValue toString(IMap M)
  {
    return values.string(M.toString());
View Full Code Here

        Type elementType = splicing ? type : type.getElementType();
        ISetWriter w = values.setWriter();
        for (IValue arg: TreeAdapter.getListASTArgs(tree)) {
          w.insert(implode(store, elementType, (IConstructor) arg, false, ctx));
        }
        return w.done();
      }
      else {
        throw new Backtrack(RuntimeExceptionFactory.illegalArgument(tree, null, null, "Cannot match list with " + type));
      }
    }
View Full Code Here

          w.append(implodedArg);
        }
        // opts should have one argument (if any at all)
        break;
      }
      return w.done();
    }
   
    if (TreeAdapter.isAmb(tree)) {
      if (!type.isSet()) {
        throw new Backtrack(RuntimeExceptionFactory.illegalArgument(tree, null, null, "Ambiguous node should match with set and not " + type));
View Full Code Here

      Type elementType = type.getElementType();
      ISetWriter w = values.setWriter();
      for (IValue arg: TreeAdapter.getAlternatives(tree)) {
        w.insert(implode(store, elementType, (IConstructor) arg, false, ctx));
      }
      return w.done();
    }
   
    if (ProductionAdapter.hasAttribute(TreeAdapter.getProduction(tree), Factory.Attribute_Bracket)) {
      return implode(store, type, (IConstructor) TreeAdapter.getASTArgs(tree).get(0), false, ctx);
    }
View Full Code Here

        } else {
          w.insert(v);
        }
        i++;
      }
      return values.tuple(pick, w.done());
    }
    throw RuntimeExceptionFactory.emptySet(null, null);
  }

  public IValue toList(ISet st)
View Full Code Here

        ISetWriter defWriter = VF.setWriter();
        for(IValue def : env.productions){
          defWriter.insert(def);
        }
       
        ITuple t = VF.tuple(importWriter.done(), extendWriter.done(), defWriter.done());
        result.put(VF.string(m), t);
      }else if(m.equals(getName())) { // This is the root scope.
        ISetWriter importWriter = VF.setWriter();
        for(String impname : importedModules){
          if(!done.contains(impname)) todo.add(impname);
View Full Code Here

        ISetWriter defWriter = VF.setWriter();
        for(IValue def : productions){
          defWriter.insert(def);
        }
       
        ITuple t = VF.tuple(importWriter.done(), extendWriter.done(), defWriter.done());
        result.put(VF.string(m), t);
      }
    }
   
   
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. 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.