Skip to content

Instantly share code, notes, and snippets.

@nasser
Created October 16, 2018 20:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nasser/b975a8af5694e63fadb522e3801a18b3 to your computer and use it in GitHub Desktop.
Save nasser/b975a8af5694e63fadb522e3801a18b3 to your computer and use it in GitHub Desktop.
using clojure.lang;
using clojure.lang.Runtime;
using clojure.lang.Runtime.Binding;
using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Security;
using System.Text.RegularExpressions;
[assembly: AssemblyVersion("0.0.0.0")]
[assembly: SecurityRules(SecurityRuleSet.Level1)]
[assembly: SecurityTransparent]
[Compiler.NamespaceBodyAttribute(names = new string[]
{
null,
null,
null,
null,
"root-cause",
"print-trace-element",
"print-throwable1",
"print-stack-trace",
"print-cause-trace",
"e"
}, types = new Type[]
{
typeof(__Init__$clojure$stacktrace.__expr33231),
typeof(__Init__$clojure$stacktrace.__expr33232),
typeof(__Init__$clojure$stacktrace.__expr33239),
typeof(__Init__$clojure$stacktrace.__expr33247),
typeof(clojure$stacktrace$root_cause__33252),
typeof(clojure$stacktrace$print_trace_element__33260),
typeof(clojure$stacktrace$print_throwable1__33275),
typeof(clojure$stacktrace$print_stack_trace__33288),
typeof(clojure$stacktrace$print_cause_trace__33296),
typeof(clojure$stacktrace$e__33304)
}, metadataFlags = new Compiler.StaticMetadataFlags[]
{
Compiler.StaticMetadataFlags.None,
Compiler.StaticMetadataFlags.None,
Compiler.StaticMetadataFlags.None,
Compiler.StaticMetadataFlags.None,
Compiler.StaticMetadataFlags.None,
Compiler.StaticMetadataFlags.None,
Compiler.StaticMetadataFlags.None,
Compiler.StaticMetadataFlags.None,
Compiler.StaticMetadataFlags.None,
Compiler.StaticMetadataFlags.None
}, metadataTypes = new Type[]
{
null,
null,
null,
null,
typeof(__Init__$clojure$stacktrace.__meta_root_cause33255),
typeof(__Init__$clojure$stacktrace.__meta_print_trace_element33270),
typeof(__Init__$clojure$stacktrace.__meta_print_throwable133278),
typeof(__Init__$clojure$stacktrace.__meta_print_stack_trace33290),
typeof(__Init__$clojure$stacktrace.__meta_print_cause_trace33299),
typeof(__Init__$clojure$stacktrace.__meta_e33306)
}), Description("{:clojure-namespace clojure.stacktrace}")]
public class __Init__$clojure$stacktrace
{
private class __expr33231
{
static __expr33231()
{
((IFn)RT.var("clojure.core", "in-ns").getRawRoot()).invoke(((IObj)Symbol.intern(null, "clojure.stacktrace")).withMeta((IPersistentMap)RT.map(new object[]
{
RT.keyword(null, "doc"),
"Print stack traces oriented towards Clojure, not Java.",
RT.keyword(null, "author"),
"Stuart Sierra"
})));
}
}
private class __expr33232
{
static __expr33232()
{
((AReference)Namespace.find((Symbol)((IObj)Symbol.intern(null, "clojure.stacktrace")).withMeta((IPersistentMap)RT.map(new object[]
{
RT.keyword(null, "doc"),
"Print stack traces oriented towards Clojure, not Java.",
RT.keyword(null, "author"),
"Stuart Sierra"
})))).resetMeta((IPersistentMap)RT.mapUniqueKeys(new object[]
{
RT.keyword(null, "doc"),
"Print stack traces oriented towards Clojure, not Java.",
RT.keyword(null, "author"),
"Stuart Sierra"
}));
}
}
private class __expr33239
{
static __expr33239()
{
((IFn)new clojure$stacktrace$loading__25261__auto____33234__33237()).invoke();
}
}
private class __expr33247
{
static __expr33247()
{
if (!((Symbol)((IObj)Symbol.intern(null, "clojure.stacktrace")).withMeta((IPersistentMap)RT.map(new object[]
{
RT.keyword(null, "doc"),
"Print stack traces oriented towards Clojure, not Java.",
RT.keyword(null, "author"),
"Stuart Sierra"
}))).Equals((object)Symbol.intern(null, "clojure.core")))
{
LockingTransaction.runInTransaction((IFn)new clojure$stacktrace$fn__33241__33245());
}
}
}
private class __meta_root_cause33255
{
static __meta_root_cause33255()
{
RT.var("clojure.stacktrace", "root-cause").setMeta((IPersistentMap)RT.mapUniqueKeys(new object[]
{
RT.keyword(null, "arglists"),
PersistentList.create(new object[]
{
clojure.lang.Tuple.create(Symbol.intern(null, "tr"))
}),
RT.keyword(null, "doc"),
"Returns the last 'cause' Throwable in a chain of Throwables.",
RT.keyword(null, "added"),
"1.1",
RT.keyword(null, "line"),
18,
RT.keyword(null, "column"),
2,
RT.keyword(null, "file"),
"clojure/stacktrace.clj"
}));
}
}
private class __meta_print_trace_element33270
{
static __meta_print_trace_element33270()
{
RT.var("clojure.stacktrace", "print-trace-element").setMeta((IPersistentMap)RT.mapUniqueKeys(new object[]
{
RT.keyword(null, "arglists"),
PersistentList.create(new object[]
{
clojure.lang.Tuple.create(Symbol.intern(null, "e"))
}),
RT.keyword(null, "doc"),
"Prints a Clojure-oriented view of one element in a stack trace.",
RT.keyword(null, "added"),
"1.1",
RT.keyword(null, "line"),
26,
RT.keyword(null, "column"),
2,
RT.keyword(null, "file"),
"clojure/stacktrace.clj"
}));
}
}
private class __meta_print_throwable133278
{
static __meta_print_throwable133278()
{
RT.var("clojure.stacktrace", "print-throwable1").setMeta((IPersistentMap)RT.mapUniqueKeys(new object[]
{
RT.keyword(null, "arglists"),
PersistentList.create(new object[]
{
clojure.lang.Tuple.create(Symbol.intern(null, "tr"))
}),
RT.keyword(null, "doc"),
"Prints the class and message of a Throwable.",
RT.keyword(null, "added"),
"1.1",
RT.keyword(null, "line"),
43,
RT.keyword(null, "column"),
2,
RT.keyword(null, "file"),
"clojure/stacktrace.clj"
}));
}
}
private class __meta_print_stack_trace33290
{
static __meta_print_stack_trace33290()
{
RT.var("clojure.stacktrace", "print-stack-trace").setMeta((IPersistentMap)RT.mapUniqueKeys(new object[]
{
RT.keyword(null, "arglists"),
PersistentList.create(new object[]
{
clojure.lang.Tuple.create(Symbol.intern(null, "tr")),
clojure.lang.Tuple.create(((IObj)Symbol.intern(null, "tr")).withMeta((IPersistentMap)RT.map(new object[]
{
RT.keyword(null, "tag"),
Symbol.intern(null, "Exception")
})), Symbol.intern(null, "n"))
}),
RT.keyword(null, "doc"),
"Prints a Clojure-oriented stack trace of tr, a Throwable.\n Prints a maximum of n stack frames (default: unlimited).\n Does not print chained exceptions (causes).",
RT.keyword(null, "added"),
"1.1",
RT.keyword(null, "line"),
49,
RT.keyword(null, "column"),
2,
RT.keyword(null, "file"),
"clojure/stacktrace.clj"
}));
}
}
private class __meta_print_cause_trace33299
{
static __meta_print_cause_trace33299()
{
RT.var("clojure.stacktrace", "print-cause-trace").setMeta((IPersistentMap)RT.mapUniqueKeys(new object[]
{
RT.keyword(null, "arglists"),
PersistentList.create(new object[]
{
clojure.lang.Tuple.create(Symbol.intern(null, "tr")),
clojure.lang.Tuple.create(Symbol.intern(null, "tr"), Symbol.intern(null, "n"))
}),
RT.keyword(null, "doc"),
"Like print-stack-trace but prints chained exceptions (causes).",
RT.keyword(null, "added"),
"1.1",
RT.keyword(null, "line"),
71,
RT.keyword(null, "column"),
2,
RT.keyword(null, "file"),
"clojure/stacktrace.clj"
}));
}
}
private class __meta_e33306
{
static __meta_e33306()
{
RT.var("clojure.stacktrace", "e").setMeta((IPersistentMap)RT.mapUniqueKeys(new object[]
{
RT.keyword(null, "arglists"),
PersistentList.create(new object[]
{
clojure.lang.Tuple.create()
}),
RT.keyword(null, "doc"),
"REPL utility. Prints a brief stack trace for the root cause of the\n most recent exception.",
RT.keyword(null, "added"),
"1.1",
RT.keyword(null, "line"),
81,
RT.keyword(null, "column"),
2,
RT.keyword(null, "file"),
"clojure/stacktrace.clj"
}));
}
}
static __Init__$clojure$stacktrace()
{
try
{
Compiler.PushNS();
__Init__$clojure$stacktrace.__static_ctor_helper_constants();
}
finally
{
Var.popThreadBindings();
}
}
public static void Initialize()
{
string arg_35_0 = "clojure.stacktrace";
Compiler.NamespaceBodyAttribute namespaceBodyAttribute = (Compiler.NamespaceBodyAttribute)typeof(__Init__$clojure$stacktrace).GetCustomAttributes(false)[0];
Compiler.InitializeNamespace(arg_35_0, namespaceBodyAttribute.names, namespaceBodyAttribute.types, namespaceBodyAttribute.metadataFlags, namespaceBodyAttribute.metadataTypes);
}
private static void __static_ctor_helper_constants()
{
}
}
[Serializable]
public class clojure$stacktrace$loading__25261__auto____33234__33237 : AFunction
{
static clojure$stacktrace$loading__25261__auto____33234__33237()
{
}
public static object invokeStatic()
{
Var.pushThreadBindings((Associative)PersistentArrayMap.EMPTY);
object result;
try
{
result = ((IFn)RT.var("clojure.core", "refer").getRawRoot()).invoke(Symbol.intern(null, "clojure.core"));
}
finally
{
Var.popThreadBindings();
}
return result;
}
public override object invoke()
{
return clojure$stacktrace$loading__25261__auto____33234__33237.invokeStatic();
}
public override bool HasArity(int num)
{
return num == 0;
}
}
[Serializable]
public class clojure$stacktrace$fn__33241__33245 : AFunction
{
static clojure$stacktrace$fn__33241__33245()
{
}
public static object invokeStatic()
{
return ((IFn)RT.var("clojure.core", "commute").getRawRoot()).invoke(((IFn)RT.var("clojure.core", "deref").getRawRoot()).invoke(RT.var("clojure.core", "*loaded-libs*")), RT.var("clojure.core", "conj").getRawRoot(), ((IObj)Symbol.intern(null, "clojure.stacktrace")).withMeta((IPersistentMap)RT.map(new object[]
{
RT.keyword(null, "doc"),
"Print stack traces oriented towards Clojure, not Java.",
RT.keyword(null, "author"),
"Stuart Sierra"
})));
}
public override object invoke()
{
return clojure$stacktrace$fn__33241__33245.invokeStatic();
}
public override bool HasArity(int num)
{
return num == 0;
}
}
[Serializable]
public class clojure$stacktrace$root_cause__33252 : AFunction
{
static clojure$stacktrace$root_cause__33252()
{
}
public static object invokeStatic(object obj)
{
while (true)
{
object obj2 = clojure$stacktrace$root_cause__33252.__interop_InnerException33254(obj);
object obj3;
if ((obj3 = obj2) == null || (obj3 is bool && !(bool)obj3))
{
break;
}
object obj4 = obj2;
obj = obj4;
}
return obj;
}
public static object __interop_InnerException33254(object arg)
{
CallSite<Func<CallSite, object, object>> sf;
return (sf = __InternalDynamicExpressionInits_33253.sf0).Target(sf, arg);
}
public override object invoke(object obj)
{
return clojure$stacktrace$root_cause__33252.invokeStatic((object)obj);
}
public override bool HasArity(int num)
{
return num == 1;
}
}
public class __InternalDynamicExpressionInits_33253
{
public static CallSite<Func<CallSite, object, object>> sf0;
static __InternalDynamicExpressionInits_33253()
{
__InternalDynamicExpressionInits_33253.sf0_setter();
}
public static CallSite<Func<CallSite, object, object>> sf0_setter()
{
return __InternalDynamicExpressionInits_33253.sf0 = CallSite<Func<CallSite, object, object>>.Create(ClojureGetZeroArityMemberBinder.CreateMe(ClojureContext.Default, "InnerException", false));
}
}
[Serializable]
public class clojure$stacktrace$print_trace_element__33260 : AFunction
{
static clojure$stacktrace$print_trace_element__33260()
{
}
public static object invokeStatic(object obj)
{
object obj2 = clojure$stacktrace$print_trace_element__33260.__interop_GetMethod33262(obj);
object obj3;
object arg_76_0;
if ((obj3 = obj2) != null && (!(obj3 is bool) || (bool)obj3))
{
object obj4 = obj2;
object obj5 = clojure$stacktrace$print_trace_element__33260.__interop_ReflectedType33264(obj4);
object obj6;
if ((obj6 = obj5) != null && (!(obj6 is bool) || (bool)obj6))
{
object obj7 = obj5;
arg_76_0 = clojure$stacktrace$print_trace_element__33260.__interop_FullName33265(obj7);
}
else
{
arg_76_0 = null;
}
}
else
{
arg_76_0 = null;
}
object obj8 = arg_76_0;
object obj10;
object obj9 = ((obj10 = obj8) == null || (obj10 is bool && !(bool)obj10)) ? "" : obj8;
object obj11 = clojure$stacktrace$print_trace_element__33260.__interop_GetMethod33266(obj);
object obj12;
object arg_EB_0;
if ((obj12 = obj11) != null && (!(obj12 is bool) || (bool)obj12))
{
object obj13 = obj11;
arg_EB_0 = clojure$stacktrace$print_trace_element__33260.__interop_Name33267(obj13);
}
else
{
arg_EB_0 = null;
}
object obj14 = arg_EB_0;
object obj16;
object obj15 = ((obj16 = obj14) == null || (obj16 is bool && !(bool)obj16)) ? "" : obj14;
object obj17 = ((IFn)RT.var("clojure.core", "re-matches").getRawRoot()).invoke(new Regex("^([A-Za-z0-9_.-]+)\\$(\\w+)__\\d+$"), ((IFn)RT.var("clojure.core", "str").getRawRoot()).invoke(obj9));
object obj18 = obj17;
object obj20;
object obj19;
if ((obj19 = (((obj20 = obj18) == null || (obj20 is bool && !(bool)obj20)) ? obj18 : Util.equiv((object)"invoke", (object)obj15))) != null && (!(obj19 is bool) || (bool)obj19))
{
((IFn)RT.var("clojure.core", "apply").getRawRoot()).invoke(RT.var("clojure.core", "printf").getRawRoot(), "%s/%s", ((IFn)RT.var("clojure.core", "rest").getRawRoot()).invoke(obj17));
}
else
{
((IFn)RT.var("clojure.core", "printf").getRawRoot()).invoke("%s.%s", obj9, obj15);
}
IFn arg_2C4_0 = (IFn)RT.var("clojure.core", "printf").getRawRoot();
object arg_2C4_1 = " (%s:%d)";
object obj21 = clojure$stacktrace$print_trace_element__33260.__interop_GetFileName33268(obj);
object obj22;
return arg_2C4_0.invoke(arg_2C4_1, ((obj22 = obj21) == null || (obj22 is bool && !(bool)obj22)) ? "" : obj21, clojure$stacktrace$print_trace_element__33260.__interop_GetFileLineNumber33269(obj));
}
public static object __interop_GetMethod33262(object obj)
{
CallSite<__interop__$198$33263> sf;
return (sf = __InternalDynamicExpressionInits_33261.sf0).Target(sf, obj);
}
public static object __interop_ReflectedType33264(object arg)
{
CallSite<Func<CallSite, object, object>> sf;
return (sf = __InternalDynamicExpressionInits_33261.sf1).Target(sf, arg);
}
public static object __interop_FullName33265(object arg)
{
CallSite<Func<CallSite, object, object>> sf;
return (sf = __InternalDynamicExpressionInits_33261.sf2).Target(sf, arg);
}
public static object __interop_GetMethod33266(object arg)
{
CallSite<Func<CallSite, object, object>> sf;
return (sf = __InternalDynamicExpressionInits_33261.sf3).Target(sf, arg);
}
public static object __interop_Name33267(object arg)
{
CallSite<Func<CallSite, object, object>> sf;
return (sf = __InternalDynamicExpressionInits_33261.sf4).Target(sf, arg);
}
public static object __interop_GetFileName33268(object arg)
{
CallSite<Func<CallSite, object, object>> sf;
return (sf = __InternalDynamicExpressionInits_33261.sf5).Target(sf, arg);
}
public static object __interop_GetFileLineNumber33269(object arg)
{
CallSite<Func<CallSite, object, object>> sf;
return (sf = __InternalDynamicExpressionInits_33261.sf6).Target(sf, arg);
}
public override object invoke(object obj)
{
return clojure$stacktrace$print_trace_element__33260.invokeStatic((object)obj);
}
public override bool HasArity(int num)
{
return num == 1;
}
}
public class __InternalDynamicExpressionInits_33261
{
public static CallSite<__interop__$198$33263> sf0;
public static CallSite<Func<CallSite, object, object>> sf1;
public static CallSite<Func<CallSite, object, object>> sf2;
public static CallSite<Func<CallSite, object, object>> sf3;
public static CallSite<Func<CallSite, object, object>> sf4;
public static CallSite<Func<CallSite, object, object>> sf5;
public static CallSite<Func<CallSite, object, object>> sf6;
static __InternalDynamicExpressionInits_33261()
{
__InternalDynamicExpressionInits_33261.sf0_setter();
__InternalDynamicExpressionInits_33261.sf1_setter();
__InternalDynamicExpressionInits_33261.sf2_setter();
__InternalDynamicExpressionInits_33261.sf3_setter();
__InternalDynamicExpressionInits_33261.sf4_setter();
__InternalDynamicExpressionInits_33261.sf5_setter();
__InternalDynamicExpressionInits_33261.sf6_setter();
}
public static CallSite<__interop__$198$33263> sf0_setter()
{
return __InternalDynamicExpressionInits_33261.sf0 = CallSite<__interop__$198$33263>.Create(ClojureInvokeMemberBinder.CreateMe(ClojureContext.Default, "GetMethod", 1, false));
}
public static CallSite<Func<CallSite, object, object>> sf1_setter()
{
return __InternalDynamicExpressionInits_33261.sf1 = CallSite<Func<CallSite, object, object>>.Create(ClojureGetZeroArityMemberBinder.CreateMe(ClojureContext.Default, "ReflectedType", false));
}
public static CallSite<Func<CallSite, object, object>> sf2_setter()
{
return __InternalDynamicExpressionInits_33261.sf2 = CallSite<Func<CallSite, object, object>>.Create(ClojureGetZeroArityMemberBinder.CreateMe(ClojureContext.Default, "FullName", false));
}
public static CallSite<Func<CallSite, object, object>> sf3_setter()
{
return __InternalDynamicExpressionInits_33261.sf3 = CallSite<Func<CallSite, object, object>>.Create(ClojureGetZeroArityMemberBinder.CreateMe(ClojureContext.Default, "GetMethod", false));
}
public static CallSite<Func<CallSite, object, object>> sf4_setter()
{
return __InternalDynamicExpressionInits_33261.sf4 = CallSite<Func<CallSite, object, object>>.Create(ClojureGetZeroArityMemberBinder.CreateMe(ClojureContext.Default, "Name", false));
}
public static CallSite<Func<CallSite, object, object>> sf5_setter()
{
return __InternalDynamicExpressionInits_33261.sf5 = CallSite<Func<CallSite, object, object>>.Create(ClojureGetZeroArityMemberBinder.CreateMe(ClojureContext.Default, "GetFileName", false));
}
public static CallSite<Func<CallSite, object, object>> sf6_setter()
{
return __InternalDynamicExpressionInits_33261.sf6 = CallSite<Func<CallSite, object, object>>.Create(ClojureGetZeroArityMemberBinder.CreateMe(ClojureContext.Default, "GetFileLineNumber", false));
}
}
[StructLayout(LayoutKind.Auto, CharSet = CharSet.Auto)]
public delegate object __interop__$198$33263(CallSite, object);
[Serializable]
public class clojure$stacktrace$print_throwable1__33275 : AFunction
{
static clojure$stacktrace$print_throwable1__33275()
{
}
public static object invokeStatic(object obj)
{
return ((IFn)RT.var("clojure.core", "print").getRawRoot()).invoke(((IFn)RT.var("clojure.core", "str").getRawRoot()).invoke(((Type)((IFn)RT.var("clojure.core", "class").getRawRoot()).invoke(obj)).FullName, ": ", clojure$stacktrace$print_throwable1__33275.__interop_Message33277(obj)));
}
public static object __interop_Message33277(object arg)
{
CallSite<Func<CallSite, object, object>> sf;
return (sf = __InternalDynamicExpressionInits_33276.sf0).Target(sf, arg);
}
public override object invoke(object obj)
{
return clojure$stacktrace$print_throwable1__33275.invokeStatic((object)obj);
}
public override bool HasArity(int num)
{
return num == 1;
}
}
public class __InternalDynamicExpressionInits_33276
{
public static CallSite<Func<CallSite, object, object>> sf0;
static __InternalDynamicExpressionInits_33276()
{
__InternalDynamicExpressionInits_33276.sf0_setter();
}
public static CallSite<Func<CallSite, object, object>> sf0_setter()
{
return __InternalDynamicExpressionInits_33276.sf0 = CallSite<Func<CallSite, object, object>>.Create(ClojureGetZeroArityMemberBinder.CreateMe(ClojureContext.Default, "Message", false));
}
}
[Serializable]
public class clojure$stacktrace$print_stack_trace__33288 : AFunction
{
static clojure$stacktrace$print_stack_trace__33288()
{
}
public static object invokeStatic(object obj, object obj2)
{
object frames = ((StackTrace)new StackTrace((Exception)obj, RT.booleanCast((object)true))).GetFrames();
((IFn)RT.var("clojure.stacktrace", "print-throwable1").getRawRoot()).invoke(obj);
((IFn)RT.var("clojure.core", "newline").getRawRoot()).invoke();
((IFn)RT.var("clojure.core", "print").getRawRoot()).invoke(" at ");
object obj3 = ((IFn)RT.var("clojure.core", "first").getRawRoot()).invoke(frames);
object obj4;
if ((obj4 = obj3) != null && (!(obj4 is bool) || (bool)obj4))
{
object arg = obj3;
((IFn)RT.var("clojure.stacktrace", "print-trace-element").getRawRoot()).invoke(arg);
}
else
{
((IFn)RT.var("clojure.core", "print").getRawRoot()).invoke("[empty stack trace]");
}
((IFn)RT.var("clojure.core", "newline").getRawRoot()).invoke();
object obj5 = ((IFn)RT.var("clojure.core", "seq").getRawRoot()).invoke((!Util.identical((object)obj2, (object)null)) ? ((IFn)RT.var("clojure.core", "take").getRawRoot()).invoke(Numbers.dec((object)obj2), ((IFn)RT.var("clojure.core", "rest").getRawRoot()).invoke(frames)) : ((IFn)RT.var("clojure.core", "rest").getRawRoot()).invoke(frames));
object obj6 = null;
long num = 0L;
long num2 = 0L;
while (true)
{
if (num2 < num)
{
object arg2 = ((Indexed)obj6).nth(RT.intCast(num2));
((IFn)RT.var("clojure.core", "print").getRawRoot()).invoke(" ");
((IFn)RT.var("clojure.stacktrace", "print-trace-element").getRawRoot()).invoke(arg2);
((IFn)RT.var("clojure.core", "newline").getRawRoot()).invoke();
object arg_285_0 = obj5;
object arg_283_0 = obj6;
long arg_281_0 = num;
num2 += 1L;
num = arg_281_0;
obj6 = arg_283_0;
obj5 = arg_285_0;
}
else
{
object obj7 = ((IFn)RT.var("clojure.core", "seq").getRawRoot()).invoke(obj5);
object obj8;
if ((obj8 = obj7) == null || (obj8 is bool && !(bool)obj8))
{
break;
}
object arg3 = obj7;
object obj9;
if ((obj9 = ((IFn)RT.var("clojure.core", "chunked-seq?").getRawRoot()).invoke(arg3)) != null && (!(obj9 is bool) || (bool)obj9))
{
object obj10 = ((IFn)RT.var("clojure.core", "chunk-first").getRawRoot()).invoke(arg3);
object arg_38B_0 = ((IFn)RT.var("clojure.core", "chunk-rest").getRawRoot()).invoke(arg3);
object arg_389_0 = obj10;
long arg_387_0 = (long)RT.intCast(RT.count((object)obj10));
num2 = (long)RT.intCast(0L);
num = arg_387_0;
obj6 = arg_389_0;
obj5 = arg_38B_0;
}
else
{
object arg4 = ((IFn)RT.var("clojure.core", "first").getRawRoot()).invoke(arg3);
((IFn)RT.var("clojure.core", "print").getRawRoot()).invoke(" ");
((IFn)RT.var("clojure.stacktrace", "print-trace-element").getRawRoot()).invoke(arg4);
((IFn)RT.var("clojure.core", "newline").getRawRoot()).invoke();
object arg_451_0 = ((IFn)RT.var("clojure.core", "next").getRawRoot()).invoke(arg3);
object arg_44F_0 = null;
long arg_44D_0 = 0L;
num2 = 0L;
num = arg_44D_0;
obj6 = arg_44F_0;
obj5 = arg_451_0;
}
}
}
return null;
}
public override object invoke(object obj, object obj2)
{
return clojure$stacktrace$print_stack_trace__33288.invokeStatic((object)obj, (object)obj2);
}
public static object invokeStatic(object arg)
{
return ((IFn)RT.var("clojure.stacktrace", "print-stack-trace").getRawRoot()).invoke(arg, null);
}
public override object invoke(object obj)
{
return clojure$stacktrace$print_stack_trace__33288.invokeStatic((object)obj);
}
public override bool HasArity(int num)
{
return num == 2 || num == 1;
}
}
[Serializable]
public class clojure$stacktrace$print_cause_trace__33296 : AFunction
{
static clojure$stacktrace$print_cause_trace__33296()
{
}
public static object invokeStatic(object obj, object obj2)
{
while (true)
{
((IFn)RT.var("clojure.stacktrace", "print-stack-trace").getRawRoot()).invoke(obj, obj2);
object obj3 = clojure$stacktrace$print_cause_trace__33296.__interop_InnerException33298(obj);
object obj4;
if ((obj4 = obj3) == null || (obj4 is bool && !(bool)obj4))
{
break;
}
object obj5 = obj3;
((IFn)RT.var("clojure.core", "print").getRawRoot()).invoke("Caused by: ");
object arg_76_0 = obj5;
obj2 = obj2;
obj = arg_76_0;
}
return null;
}
public static object __interop_InnerException33298(object arg)
{
CallSite<Func<CallSite, object, object>> sf;
return (sf = __InternalDynamicExpressionInits_33297.sf0).Target(sf, arg);
}
public override object invoke(object obj, object obj2)
{
return clojure$stacktrace$print_cause_trace__33296.invokeStatic((object)obj, (object)obj2);
}
public static object invokeStatic(object arg)
{
return ((IFn)RT.var("clojure.stacktrace", "print-cause-trace").getRawRoot()).invoke(arg, null);
}
public override object invoke(object obj)
{
return clojure$stacktrace$print_cause_trace__33296.invokeStatic((object)obj);
}
public override bool HasArity(int num)
{
return num == 2 || num == 1;
}
}
public class __InternalDynamicExpressionInits_33297
{
public static CallSite<Func<CallSite, object, object>> sf0;
static __InternalDynamicExpressionInits_33297()
{
__InternalDynamicExpressionInits_33297.sf0_setter();
}
public static CallSite<Func<CallSite, object, object>> sf0_setter()
{
return __InternalDynamicExpressionInits_33297.sf0 = CallSite<Func<CallSite, object, object>>.Create(ClojureGetZeroArityMemberBinder.CreateMe(ClojureContext.Default, "InnerException", false));
}
}
[Serializable]
public class clojure$stacktrace$e__33304 : AFunction
{
static clojure$stacktrace$e__33304()
{
}
public static object invokeStatic()
{
return ((IFn)RT.var("clojure.stacktrace", "print-stack-trace").getRawRoot()).invoke(((IFn)RT.var("clojure.stacktrace", "root-cause").getRawRoot()).invoke(RT.var("clojure.core", "*e").deref()), 8L);
}
public override object invoke()
{
return clojure$stacktrace$e__33304.invokeStatic();
}
public override bool HasArity(int num)
{
return num == 0;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment