All Downloads are FREE. Search and download functionalities are using the official Maven repository.

gw.lang.parser.IGosuParserFactory Maven / Gradle / Ivy

There is a newer version: 1.18.2
Show newest version
/*
 * Copyright 2014 Guidewire Software, Inc.
 */

package gw.lang.parser;

import gw.config.IService;
import gw.lang.reflect.gs.IGosuClassParser;
import gw.lang.reflect.IScriptabilityModifier;

public interface IGosuParserFactory extends IService
{
  IGosuParser createParser( String strSource, ISymbolTable symTable, IScriptabilityModifier scriptabilityConstraint, ITypeUsesMap tuMap );

  IGosuParser createParser( String strSource, ISymbolTable symTable, IScriptabilityModifier scriptabilityConstraint );

  /**
   * Creates an IGosuParser appropriate for parsing and executing Gosu.
   *
   * @param symTable          The symbol table the parser uses to parse and execute script.
   *
   * @return A parser appropriate for parsing Gosu source.
   */
  IGosuParser createParser( ISymbolTable symTable, IScriptabilityModifier scriptabilityConstraint );

  /**
   * Creates an IGosuParser appropriate for parsing and executing Gosu.
   *
   * @param strSource The text of the the rule source
   * @param symTable  The symbol table the parser uses to parse and execute the rule
   *
   * @return A parser appropriate for parsing Gosu source.
   */
  IGosuParser createParser( String strSource, ISymbolTable symTable );

  IGosuParser createParser( String strSource );

  IGosuClassParser createClassParser( IGosuParser parser );

  IGosuProgramParser createProgramParser();

  IGosuFragmentParser createFragmentParser();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy