@Override public void echo(Memory value) { synchronized (this) { super.echo(value); } }
@Override public void echo(byte[] bytes, int length) { synchronized (this) { super.echo(bytes, length); } }
@Override public void echo(String value) { synchronized (this) { super.echo(value); } }
public static Memory print(Environment environment, Memory memory){ environment.echo(memory); return Memory.CONST_INT_1; }
public static Memory print_r(Environment env, @Runtime.Reference Memory value, boolean returned){ StringWriter writer = new StringWriter(); Printer printer = new PrintR(env, writer); printer.print(value); if (returned){ return new StringMemory(writer.toString()); } else { env.echo(writer.toString()); return Memory.TRUE; } }
public static int printf(Environment env, TraceInfo trace, String format, Memory... args) { Memory str = sprintf(env, trace, format, args); if (str.isNull()) return 0; else { String value = str.toString(); env.echo(value); return value.length(); } }
@Signature public Memory printJVMStackTrace(Environment env, Memory... args) { if (throwable == null) return Memory.NULL; JVMStackTracer tracer = new JVMStackTracer( env.scope.getClassLoader(), throwable.getStackTrace() ); for(JVMStackTracer.Item el : tracer){ env.echo(el.toString() + "\n"); } return Memory.NULL; }
public static Memory var_dump(Environment env, @Runtime.Reference Memory value, @Runtime.Reference Memory... values){ StringWriter writer = new StringWriter(); VarDump printer = new VarDump(env, writer); printer.print(value); if (values != null) for(Memory el : values) printer.print(el); env.echo(writer.toString()); return Memory.TRUE; }
public static Memory var_export(Environment env, TraceInfo trace, @Runtime.Reference Memory value, boolean returned){ StringWriter writer = new StringWriter(); VarExport printer = new VarExport(env, writer); printer.print(value); if (printer.isRecursionExists()){ env.warning(trace, "var_export does not handle circular references"); } if (returned){ return new StringMemory(writer.toString()); } else { env.echo(writer.toString()); return Memory.TRUE; } }
@Override public boolean onFatal(ErrorException error) { Environment.this.echo("\n"); Environment.this.echo(error.getType().getTypeName() + ": " + error.getMessage()); if (error.getTraceInfo() != null) { Environment.this.echo( " in " + error.getTraceInfo().getFileName() + " on line " + (error.getTraceInfo().getStartLine() + 1) + ", position " + (error.getTraceInfo().getStartPosition() + 1) ); } return false; } });
public void die(Memory value) { if (value != null) { if (!value.isNumber()) echo(value.toString()); throw new DieException(value); } else throw new DieException(Memory.NULL); }
)); env.echo("\nStack Trace:\n"); env.echo(exception.getTraceAsString(env).toString()); env.echo("\n thrown in " + trace.getFileName() + " on line " + (trace.getStartLine() + 1) + "\n" env.echo("\nJVM Stack trace:\n"); JVMStackTracer tracer = new JVMStackTracer( env.scope.getClassLoader(), ((JavaException) exception).getThrowable().getStackTrace() for(JVMStackTracer.Item el : tracer){ if (!el.isSystem()) env.echo(" " + el.toString() + "\n");
public static void debug_print_backtrace(Environment env, TraceInfo trace, int options, int limit) { boolean provideObject = (options & LangConstants.DEBUG_BACKTRACE_PROVIDE_OBJECT.toInteger()) == LangConstants.DEBUG_BACKTRACE_PROVIDE_OBJECT.toInteger(); boolean ignoreArgs = (options & LangConstants.DEBUG_BACKTRACE_IGNORE_ARGS.toInteger()) == LangConstants.DEBUG_BACKTRACE_IGNORE_ARGS.toInteger(); StackTracer stackTracer = new StackTracer(env, limit); env.echo(stackTracer.toString(!ignoreArgs)); }
while ((len = accessFile.read(buff)) != -1) { read += len; env.echo(buff, len);
@Signature({ @Arg(value = "reflector", type = HintType.OBJECT), @Arg(value = "return", type = HintType.BOOLEAN, optional = @Optional(value = "", type = HintType.BOOLEAN)) }) public static Memory export(Environment env, Memory... args){ ReflectionFunction e = new ReflectionFunction(env, env.fetchClass("ReflectionFunction")); if (args[1].toBoolean()) return e.__toString(env); else env.echo(e.__toString(env)); return Memory.NULL; } }
@Signature({ @Arg(value = "reflector", type = HintType.OBJECT), @Arg(value = "return", type = HintType.BOOLEAN, optional = @Optional(value = "", type = HintType.BOOLEAN)) }) public static Memory export(Environment env, Memory... args) { ReflectionClass e = new ReflectionClass(env, env.fetchClass("ReflectionClass")); if (args[1].toBoolean()) return e.__toString(env); else env.echo(e.__toString(env)); return Memory.NULL; } }
@Signature({ @Arg(value = "reflector", type = HintType.OBJECT), @Arg(value = "return", type = HintType.BOOLEAN, optional = @Optional(value = "", type = HintType.BOOLEAN)) }) public static Memory export(Environment env, Memory... args){ ReflectionExtension e = new ReflectionExtension(env, env.fetchClass("ReflectionExtension")); if (args[1].toBoolean()) return e.__toString(env); else env.echo(e.__toString(env)); return Memory.NULL; } }