Package org.rascalmpl.parser.gtd.util

Examples of org.rascalmpl.parser.gtd.util.IntegerList


  /**
   * Part of the hidden-right-recursion fix.
   * Executes absent reductions.
   */
  private void propagateReductions(AbstractStackNode<P> node, AbstractNode nodeResultStore, AbstractStackNode<P> next, AbstractNode nextResultStore, int potentialNewEdges){
    IntegerList propagatedReductions = next.getPropagatedReductions();
   
    IntegerObjectList<EdgesSet<P>> edgesMap = node.getEdges();
    ArrayList<Link>[] prefixes = node.getPrefixesMap();
   
    P production = next.getParentProduction();
    String name = edgesMap.getValue(0).get(0).getName();
   
    boolean hasNestingRestrictions = hasNestingRestrictions(name);
    IntegerList filteredParents = null;
    if(hasNestingRestrictions){
      filteredParents = getFilteredParents(next.getId());
    }
   
    int fromIndex = edgesMap.size() - potentialNewEdges;
View Full Code Here


    P production = node.getParentProduction();
    String name = edgesMap.getValue(0).get(0).getName();
   
    // Check for nesting restrictions.
    boolean hasNestingRestrictions = hasNestingRestrictions(name);
    IntegerList filteredParents = null;
    if(hasNestingRestrictions){
      filteredParents = getFilteredParents(node.getId());
    }
   
    for(int i = edgesMap.size() - 1; i >= 0; --i){
View Full Code Here

 
  /**
   * Initiates the handling of reductions for nullable symbols.
   */
  private void updateNullableEdges(AbstractStackNode<P> node, AbstractNode result){
    IntegerList propagatedReductions = node.getPropagatedReductions();
   
    int initialSize = propagatedReductions.size();
   
    IntegerObjectList<EdgesSet<P>> edgesMap = node.getEdges();
    ArrayList<Link>[] prefixesMap = node.getPrefixesMap();
   
    P production = node.getParentProduction();
    String name = edgesMap.getValue(0).get(0).getName();
   
    // Check for nesting restrictions.
    boolean hasNestingRestrictions = hasNestingRestrictions(name);
    IntegerList filteredParents = null;
    if(hasNestingRestrictions){
      filteredParents = getFilteredParents(node.getId());
    }
   
    for(int i = edgesMap.size() - 1; i >= 0; --i){
View Full Code Here

  /**
   * Returns the list of start location for which the results have already
   * been propagated (hidden-right-recursion specific).
   */
  public IntegerList getPropagatedReductions(){
    if(propagatedReductions == null) propagatedReductions = new IntegerList();
   
    return propagatedReductions;
  }
View Full Code Here

TOP

Related Classes of org.rascalmpl.parser.gtd.util.IntegerList

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.