Package com.caucho.quercus.program

Examples of com.caucho.quercus.program.QuercusProgram


      if (log.isLoggable(Level.FINER))
        log.finer("quercus eval: [[" + code + "]]");

      QuercusContext quercus = env.getQuercus();

      QuercusProgram program = quercus.parseCode(code);

      Value value = program.execute(env);

      if (value == null)
        value = NullValue.NULL;

      return value;
View Full Code Here


  public final Env quercus_context;

  public initializer(OutputStream os) {

    ReadStream reader = ReaderStream.open(new StringReader("1;"));
    QuercusProgram program;
    try {
      program = QuercusParser.parse(quercus, null, reader);
    } catch (IOException impossible) {
      throw new RuntimeException(impossible);
    }
View Full Code Here

   */
  public QuercusPage parse(Path path, String fileName, int line)
    throws IOException
  {
    try {
      QuercusProgram program;

      program = _programCache.get(path);

      boolean isModified = false;
     
      if (program != null) {
        isModified = program.isModified();
       
        if (program.isCompilable()) {
        }
        else if (isModified)
          program.setCompilable(true);
        else {
          if (log.isLoggable(Level.FINE))
            log.fine(L.l("Quercus[{0}] loading interpreted page", path));
         
          return new InterpretedPage(program);
        }
      }

      if (program == null || isModified) {
        clearProgram(path, program);

        program = preloadProgram(path, fileName);

        if (program == null) {
          program = QuercusParser.parse(_quercus,
                                        path,
                                        _quercus.getScriptEncoding(),
                                        fileName,
                                        line);
        }

        _programCache.put(path, program);
      }

      if (program.getCompiledPage() != null)
        return program.getCompiledPage();

      return compilePage(program, path);
    } catch (IOException e) {
      throw e;
    } catch (RuntimeException e) {
View Full Code Here

  public Value execute(Path path)
    throws IOException
  {
    ReadStream reader = path.openRead();
   
    QuercusProgram program = QuercusParser.parse(_quercus, null, reader);
   
    OutputStream os = _out;
    WriteStream out;

    if (os != null) {
      OutputStreamStream s = new OutputStreamStream(os);
      WriteStream ws = new WriteStream(s);
     
      ws.setNewlineString("\n");

      try {
        ws.setEncoding("iso-8859-1");
      } catch (Exception e) {
      }

      out = ws;
    }
    else
      out = new WriteStream(StdoutStream.create());
   
    QuercusPage page = new InterpretedPage(program);

    Env env = new Env(_quercus, page, out, null, null);
   
    Value value = NullValue.NULL;
   
    try {
      value = program.execute(env);
    }
    catch (QuercusExitException e) {
    }
   
    out.flushBuffer();
View Full Code Here

    Env env = null;

    try {
      ReadStream reader = ReaderStream.open(script);
     
      QuercusProgram program = QuercusParser.parse(_quercus, null, reader);

      Writer writer = cxt.getWriter();
     
      WriteStream out;

      if (writer != null) {
        WriterStreamImpl s = new WriterStreamImpl();
        s.setWriter(writer);
        WriteStream os = new WriteStream(s);
       
        os.setNewlineString("\n");

        try {
          os.setEncoding("iso-8859-1");
        } catch (Exception e) {
        }

        out = os;
      }
      else
        out = new NullWriteStream();

      QuercusPage page = new InterpretedPage(program);

      env = new Env(_quercus, page, out, null, null);

      env.setScriptContext(cxt);

      // php/214c
      env.start();
     
      Object result = null;
     
      try {
        Value value = program.execute(env);
       
        if (value != null)
          result = value.toJavaObject();
      }
      catch (QuercusExitException e) {
View Full Code Here

    throws ScriptException
  {
    try {
      ReadStream reader = ReaderStream.open(script);
     
      QuercusProgram program = QuercusParser.parse(_quercus, null, reader);

      return new QuercusCompiledScript(this, program);
    } catch (RuntimeException e) {
      throw e;
    } catch (Exception e) {
View Full Code Here

  public static Value q_assert(Env env, String code)
  {
    try {
      Quercus quercus = env.getQuercus();
     
      QuercusProgram program = quercus.parseCode(code);

      program = program.createExprReturn();
     
      Value value = program.execute(env);

      if (value == null || ! value.toBoolean()) {
        env.warning(L.l("Assertion \"{0}\" failed", code));
        return NullValue.NULL;
      }
View Full Code Here

    Env env = null;

    try {
      ReadStream reader = ReaderStream.open(script);
     
      QuercusProgram program = QuercusParser.parse(_quercus, null, reader);

      Writer writer = cxt.getWriter();
     
      WriteStream out;

      if (writer != null) {
        WriterStreamImpl s = new WriterStreamImpl();
        s.setWriter(writer);
        WriteStream os = new WriteStream(s);
       
        os.setNewlineString("\n");

        try {
          os.setEncoding("iso-8859-1");
        } catch (Exception e) {
        }

        out = os;
      }
      else
        out = new NullWriteStream();

      QuercusPage page = new InterpretedPage(program);

      env = new Env(_quercus, page, out, null, null);

      env.setScriptContext(cxt);

      // php/214c
      env.start();
     
      Object result = null;
     
      try {
        Value value = program.execute(env);
       
        if (value != null)
          result = value.toJavaObject();
      }
      catch (QuercusExitException e) {
View Full Code Here

    throws ScriptException
  {
    try {
      ReadStream reader = ReaderStream.open(script);
     
      QuercusProgram program = QuercusParser.parse(_quercus, null, reader);

      return new QuercusCompiledScript(this, program);
    } catch (RuntimeException e) {
      throw e;
    } catch (Exception e) {
View Full Code Here

   */
  public QuercusPage parse(Path path, String fileName, int line)
    throws IOException
  {
    try {
      QuercusProgram program;

      program = _programCache.get(path);

      boolean isModified = false;
     
      if (program != null && _isAutoreloadingEnabled) {
        isModified = program.isModified();
       
        if (program.isCompilable()) {
        }
        else if (isModified)
          program.setCompilable(true);
        else {
          if (log.isLoggable(Level.FINE))
            log.fine(L.l("Quercus[{0}] loading interpreted page", path));
         
          return new InterpretedPage(program);
        }
      }

      if (program == null || isModified) {
        clearProgram(path, program);

        program = preloadProgram(path, fileName);

        if (program == null) {
          program = QuercusParser.parse(_quercus,
                                        path,
                                        _quercus.getScriptEncoding(),
                                        fileName,
                                        line);
        }
       
        _programCache.put(path, program);
      }

      if (program.getCompiledPage() != null)
        return program.getCompiledPage();

      return compilePage(program, path);
    } catch (IOException e) {
      throw e;
    } catch (RuntimeException e) {
View Full Code Here

TOP

Related Classes of com.caucho.quercus.program.QuercusProgram

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.