示例#1
0
func init() {
	Seq_reverse = func(seq_reverse *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(seq_reverse, 1, func(coll interface{}) interface{} {
			return cljs_core.Reduce.X_invoke_Arity3(cljs_core.Conj, cljs_core.CljsCoreIEmptyList(cljs_core.CljsCoreList_EMPTY), coll)
		})
	}(&cljs_core.AFn{})

	Re_surrogate_pair = (&js.RegExp{"([\\uD800-\\uDBFF])([\\uDC00-\\uDFFF])", "g"})

	Reverse = func(reverse *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(reverse, 1, func(s interface{}) interface{} {
			return cljs_core.Native_invoke_instance_method.X_invoke_Arity3(cljs_core.Native_invoke_instance_method.X_invoke_Arity3(cljs_core.Native_invoke_instance_method.X_invoke_Arity3(cljs_core.Native_invoke_instance_method.X_invoke_Arity3(s, "Replace", []interface{}{Re_surrogate_pair, "$2$1"}), "Split", []interface{}{""}), "Reverse", []interface{}{}), "Join", []interface{}{""})
		})
	}(&cljs_core.AFn{})

	Join = func(join *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(join, 2, func(coll interface{}) interface{} {
			return cljs_core.Apply.X_invoke_Arity2(cljs_core.Str, coll)
		}, func(separator interface{}, coll interface{}) interface{} {
			return cljs_core.Apply.X_invoke_Arity2(cljs_core.Str, cljs_core.Interpose.X_invoke_Arity2(separator, coll).(*cljs_core.CljsCoreLazySeq))
		})
	}(&cljs_core.AFn{})

	Upper_case = func(upper_case *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(upper_case, 1, func(s interface{}) interface{} {
			return cljs_core.Native_invoke_instance_method.X_invoke_Arity3(s, "ToUpperCase", []interface{}{})
		})
	}(&cljs_core.AFn{})

	Lower_case = func(lower_case *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(lower_case, 1, func(s interface{}) interface{} {
			return cljs_core.Native_invoke_instance_method.X_invoke_Arity3(s, "ToLowerCase", []interface{}{})
		})
	}(&cljs_core.AFn{})

	Capitalize = func(capitalize *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(capitalize, 1, func(s interface{}) interface{} {
			if cljs_core.Count.X_invoke_Arity1(s).(float64) < float64(2) {
				return Upper_case.X_invoke_Arity1(s)
			} else {
				return strings.Join([]string{cljs_core.Str.X_invoke_Arity1(Upper_case.X_invoke_Arity1(cljs_core.Subs.X_invoke_Arity3(s, float64(0), float64(1)))).(string), cljs_core.Str.X_invoke_Arity1(Lower_case.X_invoke_Arity1(cljs_core.Subs.X_invoke_Arity2(s, float64(1)))).(string)}, ``)
			}
		})
	}(&cljs_core.AFn{})

	Pop_last_while_empty = func(pop_last_while_empty *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(pop_last_while_empty, 1, func(v interface{}) interface{} {
			{
				var v___1 interface{} = v
				_ = v___1
				for {
					if cljs_core.X_EQ_.Arity2IIB("", cljs_core.Peek.X_invoke_Arity1(v___1)) {
						v___1 = cljs_core.Pop.X_invoke_Arity1(v___1)
						continue
					} else {
						return v___1
					}
				}
			}
		})
	}(&cljs_core.AFn{})

	Discard_trailing_if_needed = func(discard_trailing_if_needed *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(discard_trailing_if_needed, 2, func(limit interface{}, v interface{}) interface{} {
			if cljs_core.X_EQ_.Arity2IIB(float64(0), limit) {
				return Pop_last_while_empty.X_invoke_Arity1(v)
			} else {
				return v
			}
		})
	}(&cljs_core.AFn{})

	Split_with_empty_regex = func(split_with_empty_regex *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(split_with_empty_regex, 2, func(s interface{}, limit interface{}) interface{} {
			if (limit.(float64) <= float64(0)) || (limit.(float64) >= (float64(2) + cljs_core.Count.X_invoke_Arity1(s).(float64))) {
				return cljs_core.Conj.X_invoke_Arity2(cljs_core.Vec.X_invoke_Arity1(cljs_core.Cons.X_invoke_Arity2("", cljs_core.Map_.X_invoke_Arity2(cljs_core.Str, cljs_core.Seq.Arity1IQ(s)).(*cljs_core.CljsCoreLazySeq)).(*cljs_core.CljsCoreCons)), "")
			} else {
				{
					var pred__10 = cljs_core.X_EQ_
					var expr__11 = limit
					_, _ = pred__10, expr__11
					if cljs_core.Truth_(func() interface{} {
						var G__13 = float64(1)
						var G__14 = expr__11
						_, _ = G__13, G__14
						return pred__10.X_invoke_Arity2(G__13, G__14)
					}()) {
						return (&cljs_core.CljsCorePersistentVector{nil, float64(1), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{s}, nil})
					} else {
						if cljs_core.Truth_(func() interface{} {
							var G__15 = float64(2)
							var G__16 = expr__11
							_, _ = G__15, G__16
							return pred__10.X_invoke_Arity2(G__15, G__16)
						}()) {
							return (&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{"", s}, nil})
						} else {
							{
								var c = (limit.(float64) - float64(2))
								_ = c
								return cljs_core.Conj.X_invoke_Arity2(cljs_core.Vec.X_invoke_Arity1(cljs_core.Cons.X_invoke_Arity2("", cljs_core.Subvec.X_invoke_Arity3(cljs_core.Vec.X_invoke_Arity1(cljs_core.Map_.X_invoke_Arity2(cljs_core.Str, cljs_core.Seq.Arity1IQ(s)).(*cljs_core.CljsCoreLazySeq)), float64(0), c).(*cljs_core.CljsCoreSubvec)).(*cljs_core.CljsCoreCons)), cljs_core.Subs.X_invoke_Arity2(s, c))
							}
						}
					}
				}
			}
		})
	}(&cljs_core.AFn{})

	Split = func(split *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(split, 3, func(s interface{}, re interface{}) interface{} {
			return split.X_invoke_Arity3(s, re, float64(0))
		}, func(s interface{}, re interface{}, limit interface{}) interface{} {
			return Discard_trailing_if_needed.X_invoke_Arity2(limit, func() interface{} {
				if cljs_core.X_EQ_.Arity2IIB(strings.Join([]string{cljs_core.Str.X_invoke_Arity1(re).(string)}, ``), "/(?:)/") {
					return Split_with_empty_regex.X_invoke_Arity2(s, limit)
				} else {
					return func() interface{} {
						if limit.(float64) < float64(1) {
							return cljs_core.Vec.X_invoke_Arity1(js.JSString_(strings.Join([]string{cljs_core.Str.X_invoke_Arity1(s).(string)}, ``)).Split(re))
						} else {
							return func() interface{} {
								var s___1 interface{} = s
								var limit___1 interface{} = limit
								var parts interface{} = cljs_core.CljsCorePersistentVector_EMPTY
								_, _, _ = s___1, limit___1, parts
								for {
									if cljs_core.X_EQ_.Arity2IIB(limit___1, float64(1)) {
										return cljs_core.Conj.X_invoke_Arity2(parts, s___1)
									} else {
										{
											var temp__4386__auto__ = cljs_core.Re_find.X_invoke_Arity2(re, s___1)
											_ = temp__4386__auto__
											if cljs_core.Truth_(temp__4386__auto__) {
												{
													var m = temp__4386__auto__
													_ = m
													{
														var index = cljs_core.Native_invoke_instance_method.X_invoke_Arity3(s___1, "IndexOf", []interface{}{m})
														_ = index
														s___1, limit___1, parts = cljs_core.Native_invoke_instance_method.X_invoke_Arity3(s___1, "Substring", []interface{}{(index.(float64) + cljs_core.Count.X_invoke_Arity1(m).(float64))}), (limit___1.(float64) - float64(1)), cljs_core.Conj.X_invoke_Arity2(parts, cljs_core.Native_invoke_instance_method.X_invoke_Arity3(s___1, "Substring", []interface{}{float64(0), index}))
														continue
													}
												}
											} else {
												return cljs_core.Conj.X_invoke_Arity2(parts, s___1)
											}
										}
									}
								}
							}()
						}
					}()
				}
			}())
		})
	}(&cljs_core.AFn{})

	Split_lines = func(split_lines *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(split_lines, 1, func(s interface{}) interface{} {
			return Split.X_invoke_Arity2(s, (&js.RegExp{Pattern: `\n|\r\n`, Flags: ``}))
		})
	}(&cljs_core.AFn{})

	Trim = func(trim *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(trim, 1, func(s interface{}) interface{} {
			{
				var G__21 = s
				_ = G__21
				return cljs_core.Native_invoke_func.X_invoke_Arity2(goog_string.Trim, []interface{}{G__21})
			}
		})
	}(&cljs_core.AFn{})

	Triml = func(triml *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(triml, 1, func(s interface{}) interface{} {
			{
				var G__23 = s
				_ = G__23
				return cljs_core.Native_invoke_func.X_invoke_Arity2(goog_string.TrimLeft, []interface{}{G__23})
			}
		})
	}(&cljs_core.AFn{})

	Trimr = func(trimr *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(trimr, 1, func(s interface{}) interface{} {
			{
				var G__25 = s
				_ = G__25
				return cljs_core.Native_invoke_func.X_invoke_Arity2(goog_string.TrimRight, []interface{}{G__25})
			}
		})
	}(&cljs_core.AFn{})

	Trim_newline = func(trim_newline *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(trim_newline, 1, func(s interface{}) interface{} {
			{
				var index interface{} = cljs_core.Native_get_instance_field.X_invoke_Arity2(s, "Length")
				_ = index
				for {
					if index.(float64) == float64(0) {
						return ""
					} else {
						{
							var ch = cljs_core.Get.X_invoke_Arity2(s, (index.(float64) - float64(1)))
							_ = ch
							if (cljs_core.X_EQ_.Arity2IIB(ch, "\n")) || (cljs_core.X_EQ_.Arity2IIB(ch, "\r")) {
								index = (index.(float64) - float64(1))
								continue
							} else {
								return cljs_core.Native_invoke_instance_method.X_invoke_Arity3(s, "Substring", []interface{}{float64(0), index})
							}
						}
					}
				}
			}
		})
	}(&cljs_core.AFn{})

	Blank_QMARK_ = func(blank_QMARK_ *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(blank_QMARK_, 1, func(s interface{}) interface{} {
			{
				var G__27 = s
				_ = G__27
				return cljs_core.Native_invoke_func.X_invoke_Arity2(goog_string.IsEmptySafe, []interface{}{G__27})
			}
		})
	}(&cljs_core.AFn{})

	Escape = func(escape___1 *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(escape___1, 2, func(s interface{}, cmap interface{}) interface{} {
			{
				var buffer = (&goog_string.StringBuffer{})
				var length = cljs_core.Native_get_instance_field.X_invoke_Arity2(s, "Length")
				_, _ = buffer, length
				{
					var index = float64(0)
					_ = index
					for {
						if cljs_core.X_EQ_.Arity2IIB(length, index) {
							return buffer.ToString()
						} else {
							{
								var ch = cljs_core.Native_invoke_instance_method.X_invoke_Arity3(s, "CharAt", []interface{}{index})
								_ = ch
								{
									var temp__4386__auto___28 = cljs_core.Get.X_invoke_Arity2(cmap, ch)
									_ = temp__4386__auto___28
									if cljs_core.Truth_(temp__4386__auto___28) {
										{
											var replacement_29 = temp__4386__auto___28
											_ = replacement_29
											buffer.Append(strings.Join([]string{cljs_core.Str.X_invoke_Arity1(replacement_29).(string)}, ``))
										}
									} else {
										buffer.Append(ch)
									}
								}
								index = (index + float64(1))
								continue
							}
						}
					}
				}
			}
		})
	}(&cljs_core.AFn{})

}
示例#2
0
func init() {
	Bubble_max_key = func(bubble_max_key *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(bubble_max_key, 2, func(k interface{}, coll interface{}) interface{} {
			{
				var max = cljs_core.Apply.X_invoke_Arity3(cljs_core.Max_key, k, coll)
				_ = max
				return cljs_core.Cons.X_invoke_Arity2(max, cljs_core.Remove.X_invoke_Arity2(func(G__2 *cljs_core.AFn, max interface{}) *cljs_core.AFn {
					return cljs_core.Fn(G__2, 1, func(p1__1_SHARP_ interface{}) interface{} {
						return reflect.DeepEqual(max, p1__1_SHARP_)
					})
				}(&cljs_core.AFn{}, max), coll).(*cljs_core.CljsCoreLazySeq)).(*cljs_core.CljsCoreCons)
			}
		})
	}(&cljs_core.AFn{})

	Union = func(union *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(union, 2, func() interface{} {
			return cljs_core.CljsCorePersistentHashSet_EMPTY
		}, func(s1 interface{}) interface{} {
			return s1
		}, func(s1 interface{}, s2 interface{}) interface{} {
			if cljs_core.Count.X_invoke_Arity1(s1).(float64) < cljs_core.Count.X_invoke_Arity1(s2).(float64) {
				return cljs_core.Reduce.X_invoke_Arity3(cljs_core.Conj, s2, s1)
			} else {
				return cljs_core.Reduce.X_invoke_Arity3(cljs_core.Conj, s1, s2)
			}
		}, func(s1_s2_sets__ ...interface{}) interface{} {
			var s1 = s1_s2_sets__[0]
			var s2 = s1_s2_sets__[1]
			var sets = cljs_core.Seq.Arity1IQ(s1_s2_sets__[2])
			_, _, _ = s1, s2, sets
			{
				var bubbled_sets = Bubble_max_key.X_invoke_Arity2(cljs_core.Count, cljs_core.Conj.X_invoke_ArityVariadic(sets, s2, cljs_core.Array_seq.X_invoke_Arity1([]interface{}{s1}))).(*cljs_core.CljsCoreCons)
				_ = bubbled_sets
				return cljs_core.Reduce.X_invoke_Arity3(cljs_core.Into, cljs_core.First.X_invoke_Arity1(bubbled_sets), cljs_core.Rest.Arity1IQ(bubbled_sets))
			}
		})
	}(&cljs_core.AFn{})

	Intersection = func(intersection *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(intersection, 2, func(s1 interface{}) interface{} {
			return s1
		}, func(s1 interface{}, s2 interface{}) interface{} {
			for {
				if cljs_core.Count.X_invoke_Arity1(s2).(float64) < cljs_core.Count.X_invoke_Arity1(s1).(float64) {
					s1, s2 = s2, s1
					continue
				} else {
					return cljs_core.Reduce.X_invoke_Arity3(func(G__4 *cljs_core.AFn, s1 interface{}, s2 interface{}) *cljs_core.AFn {
						return cljs_core.Fn(G__4, 2, func(result interface{}, item interface{}) interface{} {
							if cljs_core.Contains_QMARK_.Arity2IIB(s2, item) {
								return result
							} else {
								return cljs_core.Disj.X_invoke_Arity2(result, item)
							}
						})
					}(&cljs_core.AFn{}, s1, s2), s1, s1)
				}
			}
		}, func(s1_s2_sets__ ...interface{}) interface{} {
			var s1 = s1_s2_sets__[0]
			var s2 = s1_s2_sets__[1]
			var sets = cljs_core.Seq.Arity1IQ(s1_s2_sets__[2])
			_, _, _ = s1, s2, sets
			{
				var bubbled_sets = Bubble_max_key.X_invoke_Arity2(func(G__5 *cljs_core.AFn) *cljs_core.AFn {
					return cljs_core.Fn(G__5, 1, func(p1__3_SHARP_ interface{}) interface{} {
						return (-cljs_core.Count.X_invoke_Arity1(p1__3_SHARP_).(float64))
					})
				}(&cljs_core.AFn{}), cljs_core.Conj.X_invoke_ArityVariadic(sets, s2, cljs_core.Array_seq.X_invoke_Arity1([]interface{}{s1}))).(*cljs_core.CljsCoreCons)
				_ = bubbled_sets
				return cljs_core.Reduce.X_invoke_Arity3(intersection, cljs_core.First.X_invoke_Arity1(bubbled_sets), cljs_core.Rest.Arity1IQ(bubbled_sets))
			}
		})
	}(&cljs_core.AFn{})

	Difference = func(difference *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(difference, 2, func(s1 interface{}) interface{} {
			return s1
		}, func(s1 interface{}, s2 interface{}) interface{} {
			if cljs_core.Count.X_invoke_Arity1(s1).(float64) < cljs_core.Count.X_invoke_Arity1(s2).(float64) {
				return cljs_core.Reduce.X_invoke_Arity3(func(G__6 *cljs_core.AFn) *cljs_core.AFn {
					return cljs_core.Fn(G__6, 2, func(result interface{}, item interface{}) interface{} {
						if cljs_core.Contains_QMARK_.Arity2IIB(s2, item) {
							return cljs_core.Disj.X_invoke_Arity2(result, item)
						} else {
							return result
						}
					})
				}(&cljs_core.AFn{}), s1, s1)
			} else {
				return cljs_core.Reduce.X_invoke_Arity3(cljs_core.Disj, s1, s2)
			}
		}, func(s1_s2_sets__ ...interface{}) interface{} {
			var s1 = s1_s2_sets__[0]
			var s2 = s1_s2_sets__[1]
			var sets = cljs_core.Seq.Arity1IQ(s1_s2_sets__[2])
			_, _, _ = s1, s2, sets
			return cljs_core.Reduce.X_invoke_Arity3(difference, s1, cljs_core.Conj.X_invoke_Arity2(sets, s2))
		})
	}(&cljs_core.AFn{})

	Select_ = func(select_ *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(select_, 2, func(pred interface{}, xset interface{}) interface{} {
			return cljs_core.Reduce.X_invoke_Arity3(func(G__9 *cljs_core.AFn) *cljs_core.AFn {
				return cljs_core.Fn(G__9, 2, func(s interface{}, k interface{}) interface{} {
					if cljs_core.Truth_(func() interface{} {
						var G__8 = k
						_ = G__8
						return pred.(cljs_core.CljsCoreIFn).X_invoke_Arity1(G__8)
					}()) {
						return s
					} else {
						return cljs_core.Disj.X_invoke_Arity2(s, k)
					}
				})
			}(&cljs_core.AFn{}), xset, xset)
		})
	}(&cljs_core.AFn{})

	Project = func(project *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(project, 2, func(xrel interface{}, ks interface{}) interface{} {
			return cljs_core.Set.X_invoke_Arity1(cljs_core.Map_.X_invoke_Arity2(func(G__11 *cljs_core.AFn) *cljs_core.AFn {
				return cljs_core.Fn(G__11, 1, func(p1__10_SHARP_ interface{}) interface{} {
					return cljs_core.Select_keys.X_invoke_Arity2(p1__10_SHARP_, ks)
				})
			}(&cljs_core.AFn{}), xrel).(*cljs_core.CljsCoreLazySeq))
		})
	}(&cljs_core.AFn{})

	Rename_keys = func(rename_keys *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(rename_keys, 2, func(map_ interface{}, kmap interface{}) interface{} {
			return cljs_core.Reduce.X_invoke_Arity3(func(G__16 *cljs_core.AFn) *cljs_core.AFn {
				return cljs_core.Fn(G__16, 2, func(m interface{}, p__14 interface{}) interface{} {
					{
						var vec__15 = p__14
						var old = cljs_core.Nth.X_invoke_Arity3(vec__15, float64(0), nil)
						var new = cljs_core.Nth.X_invoke_Arity3(vec__15, float64(1), nil)
						_, _, _ = vec__15, old, new
						if cljs_core.Contains_QMARK_.Arity2IIB(map_, old) {
							return cljs_core.Assoc.X_invoke_Arity3(m, new, cljs_core.Get.X_invoke_Arity2(map_, old))
						} else {
							return m
						}
					}
				})
			}(&cljs_core.AFn{}), cljs_core.Apply.X_invoke_Arity3(cljs_core.Dissoc, map_, cljs_core.Keys.X_invoke_Arity1(kmap)), kmap)
		})
	}(&cljs_core.AFn{})

	Rename = func(rename *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(rename, 2, func(xrel interface{}, kmap interface{}) interface{} {
			return cljs_core.Set.X_invoke_Arity1(cljs_core.Map_.X_invoke_Arity2(func(G__18 *cljs_core.AFn) *cljs_core.AFn {
				return cljs_core.Fn(G__18, 1, func(p1__17_SHARP_ interface{}) interface{} {
					return Rename_keys.X_invoke_Arity2(p1__17_SHARP_, kmap)
				})
			}(&cljs_core.AFn{}), xrel).(*cljs_core.CljsCoreLazySeq))
		})
	}(&cljs_core.AFn{})

	Index = func(index *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(index, 2, func(xrel interface{}, ks interface{}) interface{} {
			return cljs_core.Reduce.X_invoke_Arity3(func(G__19 *cljs_core.AFn) *cljs_core.AFn {
				return cljs_core.Fn(G__19, 2, func(m interface{}, x interface{}) interface{} {
					{
						var ik = cljs_core.Select_keys.X_invoke_Arity2(x, ks)
						_ = ik
						return cljs_core.Assoc.X_invoke_Arity3(m, ik, cljs_core.Conj.X_invoke_Arity2(cljs_core.Get.X_invoke_Arity3(m, ik, cljs_core.CljsCorePersistentHashSet_EMPTY), x))
					}
				})
			}(&cljs_core.AFn{}), cljs_core.CljsCorePersistentArrayMap_EMPTY, xrel)
		})
	}(&cljs_core.AFn{})

	Map_invert = func(map_invert *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(map_invert, 1, func(m interface{}) interface{} {
			return cljs_core.Reduce.X_invoke_Arity3(func(G__24 *cljs_core.AFn) *cljs_core.AFn {
				return cljs_core.Fn(G__24, 2, func(m___1 interface{}, p__22 interface{}) interface{} {
					{
						var vec__23 = p__22
						var k = cljs_core.Nth.X_invoke_Arity3(vec__23, float64(0), nil)
						var v = cljs_core.Nth.X_invoke_Arity3(vec__23, float64(1), nil)
						_, _, _ = vec__23, k, v
						return cljs_core.Assoc.X_invoke_Arity3(m___1, v, k)
					}
				})
			}(&cljs_core.AFn{}), cljs_core.CljsCorePersistentArrayMap_EMPTY, m)
		})
	}(&cljs_core.AFn{})

	Join = func(join *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(join, 3, func(xrel interface{}, yrel interface{}) interface{} {
			if cljs_core.Truth_(func() interface{} {
				var and__159__auto__ = cljs_core.Seq.Arity1IQ(xrel)
				_ = and__159__auto__
				if cljs_core.Truth_(and__159__auto__) {
					return cljs_core.Seq.Arity1IQ(yrel)
				} else {
					return and__159__auto__
				}
			}()) {
				{
					var ks = Intersection.X_invoke_Arity2(cljs_core.Set.X_invoke_Arity1(cljs_core.Keys.X_invoke_Arity1(cljs_core.First.X_invoke_Arity1(xrel))), cljs_core.Set.X_invoke_Arity1(cljs_core.Keys.X_invoke_Arity1(cljs_core.First.X_invoke_Arity1(yrel))))
					var vec__33 = func() cljs_core.CljsCoreIVector {
						if cljs_core.Count.X_invoke_Arity1(xrel).(float64) <= cljs_core.Count.X_invoke_Arity1(yrel).(float64) {
							return (&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{xrel, yrel}, nil})
						} else {
							return (&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{yrel, xrel}, nil})
						}
					}()
					var r = cljs_core.Nth.X_invoke_Arity3(vec__33, float64(0), nil)
					var s = cljs_core.Nth.X_invoke_Arity3(vec__33, float64(1), nil)
					var idx = Index.X_invoke_Arity2(r, ks)
					_, _, _, _, _ = ks, vec__33, r, s, idx
					return cljs_core.Reduce.X_invoke_Arity3(func(G__37 *cljs_core.AFn, ks interface{}, vec__33 cljs_core.CljsCoreIVector, r interface{}, s interface{}, idx interface{}) *cljs_core.AFn {
						return cljs_core.Fn(G__37, 2, func(ret interface{}, x interface{}) interface{} {
							{
								var found = func() interface{} {
									var G__34 = cljs_core.Select_keys.X_invoke_Arity2(x, ks)
									_ = G__34
									return idx.(cljs_core.CljsCoreIFn).X_invoke_Arity1(G__34)
								}()
								_ = found
								if cljs_core.Truth_(found) {
									return cljs_core.Reduce.X_invoke_Arity3(func(G__38 *cljs_core.AFn, found interface{}, ks interface{}, vec__33 cljs_core.CljsCoreIVector, r interface{}, s interface{}, idx interface{}) *cljs_core.AFn {
										return cljs_core.Fn(G__38, 2, func(p1__25_SHARP_ interface{}, p2__26_SHARP_ interface{}) interface{} {
											return cljs_core.Conj.X_invoke_Arity2(p1__25_SHARP_, cljs_core.Merge.X_invoke_ArityVariadic(cljs_core.Array_seq.X_invoke_Arity1([]interface{}{p2__26_SHARP_, x})))
										})
									}(&cljs_core.AFn{}, found, ks, vec__33, r, s, idx), ret, found)
								} else {
									return ret
								}
							}
						})
					}(&cljs_core.AFn{}, ks, vec__33, r, s, idx), cljs_core.CljsCorePersistentHashSet_EMPTY, s)
				}
			} else {
				return cljs_core.CljsCorePersistentHashSet_EMPTY
			}
		}, func(xrel interface{}, yrel interface{}, km interface{}) interface{} {
			{
				var vec__35 = func() cljs_core.CljsCoreIVector {
					if cljs_core.Count.X_invoke_Arity1(xrel).(float64) <= cljs_core.Count.X_invoke_Arity1(yrel).(float64) {
						return (&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{xrel, yrel, Map_invert.X_invoke_Arity1(km)}, nil})
					} else {
						return (&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{yrel, xrel, km}, nil})
					}
				}()
				var r = cljs_core.Nth.X_invoke_Arity3(vec__35, float64(0), nil)
				var s = cljs_core.Nth.X_invoke_Arity3(vec__35, float64(1), nil)
				var k = cljs_core.Nth.X_invoke_Arity3(vec__35, float64(2), nil)
				var idx = Index.X_invoke_Arity2(r, cljs_core.Vals.X_invoke_Arity1(k))
				_, _, _, _, _ = vec__35, r, s, k, idx
				return cljs_core.Reduce.X_invoke_Arity3(func(G__39 *cljs_core.AFn, vec__35 cljs_core.CljsCoreIVector, r interface{}, s interface{}, k interface{}, idx interface{}) *cljs_core.AFn {
					return cljs_core.Fn(G__39, 2, func(ret interface{}, x interface{}) interface{} {
						{
							var found = func() interface{} {
								var G__36 = Rename_keys.X_invoke_Arity2(cljs_core.Select_keys.X_invoke_Arity2(x, cljs_core.Keys.X_invoke_Arity1(k)), k)
								_ = G__36
								return idx.(cljs_core.CljsCoreIFn).X_invoke_Arity1(G__36)
							}()
							_ = found
							if cljs_core.Truth_(found) {
								return cljs_core.Reduce.X_invoke_Arity3(func(G__40 *cljs_core.AFn, found interface{}, vec__35 cljs_core.CljsCoreIVector, r interface{}, s interface{}, k interface{}, idx interface{}) *cljs_core.AFn {
									return cljs_core.Fn(G__40, 2, func(p1__27_SHARP_ interface{}, p2__28_SHARP_ interface{}) interface{} {
										return cljs_core.Conj.X_invoke_Arity2(p1__27_SHARP_, cljs_core.Merge.X_invoke_ArityVariadic(cljs_core.Array_seq.X_invoke_Arity1([]interface{}{p2__28_SHARP_, x})))
									})
								}(&cljs_core.AFn{}, found, vec__35, r, s, k, idx), ret, found)
							} else {
								return ret
							}
						}
					})
				}(&cljs_core.AFn{}, vec__35, r, s, k, idx), cljs_core.CljsCorePersistentHashSet_EMPTY, s)
			}
		})
	}(&cljs_core.AFn{})

	Subset_QMARK_ = func(subset_QMARK_ *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(subset_QMARK_, 2, func(set1 interface{}, set2 interface{}) interface{} {
			return (cljs_core.Count.X_invoke_Arity1(set1).(float64) <= cljs_core.Count.X_invoke_Arity1(set2).(float64)) && (cljs_core.Every_QMARK_.Arity2IIB(func(G__42 *cljs_core.AFn) *cljs_core.AFn {
				return cljs_core.Fn(G__42, 1, func(p1__41_SHARP_ interface{}) interface{} {
					return cljs_core.Contains_QMARK_.Arity2IIB(set2, p1__41_SHARP_)
				})
			}(&cljs_core.AFn{}), set1))
		})
	}(&cljs_core.AFn{})

	Superset_QMARK_ = func(superset_QMARK_ *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(superset_QMARK_, 2, func(set1 interface{}, set2 interface{}) interface{} {
			return (cljs_core.Count.X_invoke_Arity1(set1).(float64) >= cljs_core.Count.X_invoke_Arity1(set2).(float64)) && (cljs_core.Every_QMARK_.Arity2IIB(func(G__44 *cljs_core.AFn) *cljs_core.AFn {
				return cljs_core.Fn(G__44, 1, func(p1__43_SHARP_ interface{}) interface{} {
					return cljs_core.Contains_QMARK_.Arity2IIB(set1, p1__43_SHARP_)
				})
			}(&cljs_core.AFn{}), set2))
		})
	}(&cljs_core.AFn{})

}
示例#3
0
func init() {
	Test_letfn = func(test_letfn *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(test_letfn, 0, func() interface{} {
			{
				var ev_QMARK_, od_QMARK_ *cljs_core.AFn
				ev_QMARK_ = func(ev_QMARK_ *cljs_core.AFn) *cljs_core.AFn {
					return cljs_core.Fn(ev_QMARK_, 1, func(x interface{}) interface{} {
						if x.(float64) == float64(0) {
							return true
						} else {
							return od_QMARK_.X_invoke_Arity1((x.(float64) - float64(1)))
						}
					})
				}(&cljs_core.AFn{})
				od_QMARK_ = func(od_QMARK_ *cljs_core.AFn) *cljs_core.AFn {
					return cljs_core.Fn(od_QMARK_, 1, func(x interface{}) interface{} {
						if x.(float64) == float64(0) {
							return false
						} else {
							return ev_QMARK_.X_invoke_Arity1((x.(float64) - float64(1)))
						}
					})
				}(&cljs_core.AFn{})
				_, _ = ev_QMARK_, od_QMARK_
				if cljs_core.Truth_(ev_QMARK_.X_invoke_Arity1(float64(0))) {
				} else {
					panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(ev? 0)").(string)}, ``)}))
				}
				if cljs_core.Truth_(ev_QMARK_.X_invoke_Arity1(float64(10))) {
				} else {
					panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(ev? 10)").(string)}, ``)}))
				}
				if cljs_core.Not.Arity1IB(ev_QMARK_.X_invoke_Arity1(float64(1))) {
				} else {
					panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(not (ev? 1))").(string)}, ``)}))
				}
				if cljs_core.Not.Arity1IB(ev_QMARK_.X_invoke_Arity1(float64(11))) {
				} else {
					panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(not (ev? 11))").(string)}, ``)}))
				}
				if cljs_core.Not.Arity1IB(od_QMARK_.X_invoke_Arity1(float64(0))) {
				} else {
					panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(not (od? 0))").(string)}, ``)}))
				}
				if cljs_core.Not.Arity1IB(od_QMARK_.X_invoke_Arity1(float64(10))) {
				} else {
					panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(not (od? 10))").(string)}, ``)}))
				}
				if cljs_core.Truth_(od_QMARK_.X_invoke_Arity1(float64(1))) {
				} else {
					panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(od? 1)").(string)}, ``)}))
				}
				if cljs_core.Truth_(od_QMARK_.X_invoke_Arity1(float64(11))) {
					return nil
				} else {
					panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(od? 11)").(string)}, ``)}))
				}
			}
		})
	}(&cljs_core.AFn{})

}
示例#4
0
func init() {
	Zipper = func(zipper *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(zipper, 4, func(branch_QMARK_ interface{}, children interface{}, make_node interface{}, root interface{}) interface{} {
			return cljs_core.With_meta.X_invoke_Arity2((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{root, nil}, nil}), (&cljs_core.CljsCorePersistentArrayMap{nil, float64(3), []interface{}{(&cljs_core.CljsCoreKeyword{Ns: "zip", Name: "make-node", Fqn: "zip/make-node", X_hash: float64(1103800591)}), make_node, (&cljs_core.CljsCoreKeyword{Ns: "zip", Name: "children", Fqn: "zip/children", X_hash: float64(-940194589)}), children, (&cljs_core.CljsCoreKeyword{Ns: "zip", Name: "branch?", Fqn: "zip/branch?", X_hash: float64(-998880862)}), branch_QMARK_}, nil}))
		})
	}(&cljs_core.AFn{})

	Seq_zip = func(seq_zip *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(seq_zip, 1, func(root interface{}) interface{} {
			return Zipper.X_invoke_Arity4(cljs_core.Seq_QMARK_, cljs_core.Identity, func(G__1 *cljs_core.AFn) *cljs_core.AFn {
				return cljs_core.Fn(G__1, 2, func(node interface{}, children interface{}) interface{} {
					return cljs_core.With_meta.X_invoke_Arity2(children, cljs_core.Meta.X_invoke_Arity1(node))
				})
			}(&cljs_core.AFn{}), root)
		})
	}(&cljs_core.AFn{})

	Vector_zip = func(vector_zip *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(vector_zip, 1, func(root interface{}) interface{} {
			return Zipper.X_invoke_Arity4(cljs_core.Vector_QMARK_, cljs_core.Seq, func(G__2 *cljs_core.AFn) *cljs_core.AFn {
				return cljs_core.Fn(G__2, 2, func(node interface{}, children interface{}) interface{} {
					return cljs_core.With_meta.X_invoke_Arity2(cljs_core.Vec.X_invoke_Arity1(children), cljs_core.Meta.X_invoke_Arity1(node))
				})
			}(&cljs_core.AFn{}), root)
		})
	}(&cljs_core.AFn{})

	Xml_zip = func(xml_zip *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(xml_zip, 1, func(root interface{}) interface{} {
			return Zipper.X_invoke_Arity4(cljs_core.Complement.X_invoke_Arity1(cljs_core.String_QMARK_).(cljs_core.CljsCoreIFn), cljs_core.Comp.X_invoke_Arity2(cljs_core.Seq, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "content", Fqn: "content", X_hash: float64(15833224)})).(cljs_core.CljsCoreIFn), func(G__3 *cljs_core.AFn) *cljs_core.AFn {
				return cljs_core.Fn(G__3, 2, func(node interface{}, children interface{}) interface{} {
					return cljs_core.Assoc.X_invoke_Arity3(node, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "content", Fqn: "content", X_hash: float64(15833224)}), func() interface{} {
						var and__159__auto__ = children
						_ = and__159__auto__
						if cljs_core.Truth_(and__159__auto__) {
							return cljs_core.Apply.X_invoke_Arity2(cljs_core.Vector, children)
						} else {
							return and__159__auto__
						}
					}())
				})
			}(&cljs_core.AFn{}), root)
		})
	}(&cljs_core.AFn{})

	Node = func(node *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(node, 1, func(loc interface{}) interface{} {
			{
				var G__5 = float64(0)
				_ = G__5
				return loc.(cljs_core.CljsCoreIFn).X_invoke_Arity1(G__5)
			}
		})
	}(&cljs_core.AFn{})

	Branch_QMARK_ = func(branch_QMARK_ *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(branch_QMARK_, 1, func(loc interface{}) interface{} {
			return (&cljs_core.CljsCoreKeyword{Ns: "zip", Name: "branch?", Fqn: "zip/branch?", X_hash: float64(-998880862)}).X_invoke_Arity1(cljs_core.Meta.X_invoke_Arity1(loc)).(cljs_core.CljsCoreIFn).X_invoke_Arity1(Node.X_invoke_Arity1(loc))
		})
	}(&cljs_core.AFn{})

	Children = func(children *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(children, 1, func(loc interface{}) interface{} {
			if cljs_core.Truth_(Branch_QMARK_.X_invoke_Arity1(loc)) {
				return (&cljs_core.CljsCoreKeyword{Ns: "zip", Name: "children", Fqn: "zip/children", X_hash: float64(-940194589)}).X_invoke_Arity1(cljs_core.Meta.X_invoke_Arity1(loc)).(cljs_core.CljsCoreIFn).X_invoke_Arity1(Node.X_invoke_Arity1(loc))
			} else {
				panic("called children on a leaf node")
			}
		})
	}(&cljs_core.AFn{})

	Make_node = func(make_node *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(make_node, 3, func(loc interface{}, node interface{}, children interface{}) interface{} {
			return (&cljs_core.CljsCoreKeyword{Ns: "zip", Name: "make-node", Fqn: "zip/make-node", X_hash: float64(1103800591)}).X_invoke_Arity1(cljs_core.Meta.X_invoke_Arity1(loc)).(cljs_core.CljsCoreIFn).X_invoke_Arity2(node, children)
		})
	}(&cljs_core.AFn{})

	Path = func(path *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(path, 1, func(loc interface{}) interface{} {
			return (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "pnodes", Fqn: "pnodes", X_hash: float64(1739080565)}).X_invoke_Arity1(func() interface{} {
				var G__7 = float64(1)
				_ = G__7
				return loc.(cljs_core.CljsCoreIFn).X_invoke_Arity1(G__7)
			}())
		})
	}(&cljs_core.AFn{})

	Lefts = func(lefts *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(lefts, 1, func(loc interface{}) interface{} {
			return cljs_core.Seq.Arity1IQ((&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}).X_invoke_Arity1(func() interface{} {
				var G__9 = float64(1)
				_ = G__9
				return loc.(cljs_core.CljsCoreIFn).X_invoke_Arity1(G__9)
			}()))
		})
	}(&cljs_core.AFn{})

	Rights = func(rights *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(rights, 1, func(loc interface{}) interface{} {
			return (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}).X_invoke_Arity1(func() interface{} {
				var G__11 = float64(1)
				_ = G__11
				return loc.(cljs_core.CljsCoreIFn).X_invoke_Arity1(G__11)
			}())
		})
	}(&cljs_core.AFn{})

	Down = func(down *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(down, 1, func(loc interface{}) interface{} {
			if cljs_core.Truth_(Branch_QMARK_.X_invoke_Arity1(loc)) {
				{
					var vec__14 = loc
					var node = cljs_core.Nth.X_invoke_Arity3(vec__14, float64(0), nil)
					var path = cljs_core.Nth.X_invoke_Arity3(vec__14, float64(1), nil)
					var vec__15 = Children.X_invoke_Arity1(loc)
					var c = cljs_core.Nth.X_invoke_Arity3(vec__15, float64(0), nil)
					var cnext = cljs_core.Seq_(cljs_core.Nthnext.X_invoke_Arity2(vec__15, float64(1)))
					var cs = vec__15
					_, _, _, _, _, _, _ = vec__14, node, path, vec__15, c, cnext, cs
					if cljs_core.Truth_(cs) {
						return cljs_core.With_meta.X_invoke_Arity2((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{c, (&cljs_core.CljsCorePersistentArrayMap{nil, float64(4), []interface{}{(&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}), cljs_core.CljsCorePersistentVector_EMPTY, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "pnodes", Fqn: "pnodes", X_hash: float64(1739080565)}), func() interface{} {
							if cljs_core.Truth_(path) {
								return cljs_core.Conj.X_invoke_Arity2((&cljs_core.CljsCoreKeyword{Ns: nil, Name: "pnodes", Fqn: "pnodes", X_hash: float64(1739080565)}).X_invoke_Arity1(path), node)
							} else {
								return (&cljs_core.CljsCorePersistentVector{nil, float64(1), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{node}, nil})
							}
						}(), (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "ppath", Fqn: "ppath", X_hash: float64(-1758182784)}), path, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}), cnext}, nil})}, nil}), cljs_core.Meta.X_invoke_Arity1(loc))
					} else {
						return nil
					}
				}
			} else {
				return nil
			}
		})
	}(&cljs_core.AFn{})

	Up = func(up *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(up, 1, func(loc interface{}) interface{} {
			{
				var vec__18 = loc
				var node = cljs_core.Nth.X_invoke_Arity3(vec__18, float64(0), nil)
				var map__19 = cljs_core.Nth.X_invoke_Arity3(vec__18, float64(1), nil)
				var map__19___1 = func() interface{} {
					if cljs_core.Seq_QMARK_.Arity1IB(map__19) {
						return cljs_core.Apply.X_invoke_Arity2(cljs_core.Hash_map, map__19)
					} else {
						return map__19
					}
				}()
				var path = map__19___1
				var l = cljs_core.Get.X_invoke_Arity2(map__19___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}))
				var ppath = cljs_core.Get.X_invoke_Arity2(map__19___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "ppath", Fqn: "ppath", X_hash: float64(-1758182784)}))
				var pnodes = cljs_core.Get.X_invoke_Arity2(map__19___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "pnodes", Fqn: "pnodes", X_hash: float64(1739080565)}))
				var r = cljs_core.Get.X_invoke_Arity2(map__19___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}))
				var changed_QMARK_ = cljs_core.Get.X_invoke_Arity2(map__19___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "changed?", Fqn: "changed?", X_hash: float64(-437828330)}))
				_, _, _, _, _, _, _, _, _, _ = vec__18, node, map__19, map__19___1, path, l, ppath, pnodes, r, changed_QMARK_
				if cljs_core.Truth_(pnodes) {
					{
						var pnode = cljs_core.Peek.X_invoke_Arity1(pnodes)
						_ = pnode
						return cljs_core.With_meta.X_invoke_Arity2(func() cljs_core.CljsCoreIVector {
							if cljs_core.Truth_(changed_QMARK_) {
								return (&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{Make_node.X_invoke_Arity3(loc, pnode, cljs_core.Concat.X_invoke_Arity2(l, cljs_core.Cons.X_invoke_Arity2(node, r).(*cljs_core.CljsCoreCons)).(*cljs_core.CljsCoreLazySeq)), func() interface{} {
									var and__159__auto__ = ppath
									_ = and__159__auto__
									if cljs_core.Truth_(and__159__auto__) {
										return cljs_core.Assoc.X_invoke_Arity3(ppath, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "changed?", Fqn: "changed?", X_hash: float64(-437828330)}), true)
									} else {
										return and__159__auto__
									}
								}()}, nil})
							} else {
								return (&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{pnode, ppath}, nil})
							}
						}(), cljs_core.Meta.X_invoke_Arity1(loc))
					}
				} else {
					return nil
				}
			}
		})
	}(&cljs_core.AFn{})

	Root = func(root *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(root, 1, func(loc interface{}) interface{} {
			for {
				if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCoreKeyword{Ns: nil, Name: "end", Fqn: "end", X_hash: float64(-268185958)}), func() interface{} {
					var G__21 = float64(1)
					_ = G__21
					return loc.(cljs_core.CljsCoreIFn).X_invoke_Arity1(G__21)
				}()) {
					return Node.X_invoke_Arity1(loc)
				} else {
					{
						var p = Up.X_invoke_Arity1(loc)
						_ = p
						if cljs_core.Truth_(p) {
							loc = p
							continue
						} else {
							return Node.X_invoke_Arity1(loc)
						}
					}
				}
			}
		})
	}(&cljs_core.AFn{})

	Right = func(right *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(right, 1, func(loc interface{}) interface{} {
			{
				var vec__25 = loc
				var node = cljs_core.Nth.X_invoke_Arity3(vec__25, float64(0), nil)
				var map__26 = cljs_core.Nth.X_invoke_Arity3(vec__25, float64(1), nil)
				var map__26___1 = func() interface{} {
					if cljs_core.Seq_QMARK_.Arity1IB(map__26) {
						return cljs_core.Apply.X_invoke_Arity2(cljs_core.Hash_map, map__26)
					} else {
						return map__26
					}
				}()
				var path = map__26___1
				var l = cljs_core.Get.X_invoke_Arity2(map__26___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}))
				var vec__27 = cljs_core.Get.X_invoke_Arity2(map__26___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}))
				var r = cljs_core.Nth.X_invoke_Arity3(vec__27, float64(0), nil)
				var rnext = cljs_core.Seq_(cljs_core.Nthnext.X_invoke_Arity2(vec__27, float64(1)))
				var rs = vec__27
				_, _, _, _, _, _, _, _, _, _ = vec__25, node, map__26, map__26___1, path, l, vec__27, r, rnext, rs
				if cljs_core.Truth_(func() interface{} {
					var and__159__auto__ = path
					_ = and__159__auto__
					if cljs_core.Truth_(and__159__auto__) {
						return rs
					} else {
						return and__159__auto__
					}
				}()) {
					return cljs_core.With_meta.X_invoke_Arity2((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{r, cljs_core.Assoc.X_invoke_ArityVariadic(path, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}), cljs_core.Conj.X_invoke_Arity2(l, node), cljs_core.Array_seq.X_invoke_Arity1([]interface{}{(&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}), rnext}))}, nil}), cljs_core.Meta.X_invoke_Arity1(loc))
				} else {
					return nil
				}
			}
		})
	}(&cljs_core.AFn{})

	Rightmost = func(rightmost *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(rightmost, 1, func(loc interface{}) interface{} {
			{
				var vec__30 = loc
				var node = cljs_core.Nth.X_invoke_Arity3(vec__30, float64(0), nil)
				var map__31 = cljs_core.Nth.X_invoke_Arity3(vec__30, float64(1), nil)
				var map__31___1 = func() interface{} {
					if cljs_core.Seq_QMARK_.Arity1IB(map__31) {
						return cljs_core.Apply.X_invoke_Arity2(cljs_core.Hash_map, map__31)
					} else {
						return map__31
					}
				}()
				var path = map__31___1
				var l = cljs_core.Get.X_invoke_Arity2(map__31___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}))
				var r = cljs_core.Get.X_invoke_Arity2(map__31___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}))
				_, _, _, _, _, _, _ = vec__30, node, map__31, map__31___1, path, l, r
				if cljs_core.Truth_(func() interface{} {
					var and__159__auto__ = path
					_ = and__159__auto__
					if cljs_core.Truth_(and__159__auto__) {
						return r
					} else {
						return and__159__auto__
					}
				}()) {
					return cljs_core.With_meta.X_invoke_Arity2((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{cljs_core.Last.X_invoke_Arity1(r), cljs_core.Assoc.X_invoke_ArityVariadic(path, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}), cljs_core.Apply.X_invoke_Arity4(cljs_core.Conj, l, node, cljs_core.Seq_(cljs_core.Butlast.X_invoke_Arity1(r))), cljs_core.Array_seq.X_invoke_Arity1([]interface{}{(&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}), nil}))}, nil}), cljs_core.Meta.X_invoke_Arity1(loc))
				} else {
					return loc
				}
			}
		})
	}(&cljs_core.AFn{})

	Left = func(left *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(left, 1, func(loc interface{}) interface{} {
			{
				var vec__34 = loc
				var node = cljs_core.Nth.X_invoke_Arity3(vec__34, float64(0), nil)
				var map__35 = cljs_core.Nth.X_invoke_Arity3(vec__34, float64(1), nil)
				var map__35___1 = func() interface{} {
					if cljs_core.Seq_QMARK_.Arity1IB(map__35) {
						return cljs_core.Apply.X_invoke_Arity2(cljs_core.Hash_map, map__35)
					} else {
						return map__35
					}
				}()
				var path = map__35___1
				var l = cljs_core.Get.X_invoke_Arity2(map__35___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}))
				var r = cljs_core.Get.X_invoke_Arity2(map__35___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}))
				_, _, _, _, _, _, _ = vec__34, node, map__35, map__35___1, path, l, r
				if cljs_core.Truth_(func() interface{} {
					var and__159__auto__ = path
					_ = and__159__auto__
					if cljs_core.Truth_(and__159__auto__) {
						return cljs_core.Seq.Arity1IQ(l)
					} else {
						return and__159__auto__
					}
				}()) {
					return cljs_core.With_meta.X_invoke_Arity2((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{cljs_core.Peek.X_invoke_Arity1(l), cljs_core.Assoc.X_invoke_ArityVariadic(path, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}), cljs_core.Pop.X_invoke_Arity1(l), cljs_core.Array_seq.X_invoke_Arity1([]interface{}{(&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}), cljs_core.Cons.X_invoke_Arity2(node, r).(*cljs_core.CljsCoreCons)}))}, nil}), cljs_core.Meta.X_invoke_Arity1(loc))
				} else {
					return nil
				}
			}
		})
	}(&cljs_core.AFn{})

	Leftmost = func(leftmost *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(leftmost, 1, func(loc interface{}) interface{} {
			{
				var vec__38 = loc
				var node = cljs_core.Nth.X_invoke_Arity3(vec__38, float64(0), nil)
				var map__39 = cljs_core.Nth.X_invoke_Arity3(vec__38, float64(1), nil)
				var map__39___1 = func() interface{} {
					if cljs_core.Seq_QMARK_.Arity1IB(map__39) {
						return cljs_core.Apply.X_invoke_Arity2(cljs_core.Hash_map, map__39)
					} else {
						return map__39
					}
				}()
				var path = map__39___1
				var l = cljs_core.Get.X_invoke_Arity2(map__39___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}))
				var r = cljs_core.Get.X_invoke_Arity2(map__39___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}))
				_, _, _, _, _, _, _ = vec__38, node, map__39, map__39___1, path, l, r
				if cljs_core.Truth_(func() interface{} {
					var and__159__auto__ = path
					_ = and__159__auto__
					if cljs_core.Truth_(and__159__auto__) {
						return cljs_core.Seq.Arity1IQ(l)
					} else {
						return and__159__auto__
					}
				}()) {
					return cljs_core.With_meta.X_invoke_Arity2((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{cljs_core.First.X_invoke_Arity1(l), cljs_core.Assoc.X_invoke_ArityVariadic(path, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}), cljs_core.CljsCorePersistentVector_EMPTY, cljs_core.Array_seq.X_invoke_Arity1([]interface{}{(&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}), cljs_core.Concat.X_invoke_ArityVariadic(cljs_core.Rest.Arity1IQ(l), (&cljs_core.CljsCorePersistentVector{nil, float64(1), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{node}, nil}), cljs_core.Array_seq.X_invoke_Arity1([]interface{}{r})).(*cljs_core.CljsCoreLazySeq)}))}, nil}), cljs_core.Meta.X_invoke_Arity1(loc))
				} else {
					return loc
				}
			}
		})
	}(&cljs_core.AFn{})

	Insert_left = func(insert_left *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(insert_left, 2, func(loc interface{}, item interface{}) interface{} {
			{
				var vec__42 = loc
				var node = cljs_core.Nth.X_invoke_Arity3(vec__42, float64(0), nil)
				var map__43 = cljs_core.Nth.X_invoke_Arity3(vec__42, float64(1), nil)
				var map__43___1 = func() interface{} {
					if cljs_core.Seq_QMARK_.Arity1IB(map__43) {
						return cljs_core.Apply.X_invoke_Arity2(cljs_core.Hash_map, map__43)
					} else {
						return map__43
					}
				}()
				var path = map__43___1
				var l = cljs_core.Get.X_invoke_Arity2(map__43___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}))
				_, _, _, _, _, _ = vec__42, node, map__43, map__43___1, path, l
				if cljs_core.Nil_(path) {
					panic("Insert at top")
				} else {
					return cljs_core.With_meta.X_invoke_Arity2((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{node, cljs_core.Assoc.X_invoke_ArityVariadic(path, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}), cljs_core.Conj.X_invoke_Arity2(l, item), cljs_core.Array_seq.X_invoke_Arity1([]interface{}{(&cljs_core.CljsCoreKeyword{Ns: nil, Name: "changed?", Fqn: "changed?", X_hash: float64(-437828330)}), true}))}, nil}), cljs_core.Meta.X_invoke_Arity1(loc))
				}
			}
		})
	}(&cljs_core.AFn{})

	Insert_right = func(insert_right *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(insert_right, 2, func(loc interface{}, item interface{}) interface{} {
			{
				var vec__46 = loc
				var node = cljs_core.Nth.X_invoke_Arity3(vec__46, float64(0), nil)
				var map__47 = cljs_core.Nth.X_invoke_Arity3(vec__46, float64(1), nil)
				var map__47___1 = func() interface{} {
					if cljs_core.Seq_QMARK_.Arity1IB(map__47) {
						return cljs_core.Apply.X_invoke_Arity2(cljs_core.Hash_map, map__47)
					} else {
						return map__47
					}
				}()
				var path = map__47___1
				var r = cljs_core.Get.X_invoke_Arity2(map__47___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}))
				_, _, _, _, _, _ = vec__46, node, map__47, map__47___1, path, r
				if cljs_core.Nil_(path) {
					panic("Insert at top")
				} else {
					return cljs_core.With_meta.X_invoke_Arity2((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{node, cljs_core.Assoc.X_invoke_ArityVariadic(path, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}), cljs_core.Cons.X_invoke_Arity2(item, r).(*cljs_core.CljsCoreCons), cljs_core.Array_seq.X_invoke_Arity1([]interface{}{(&cljs_core.CljsCoreKeyword{Ns: nil, Name: "changed?", Fqn: "changed?", X_hash: float64(-437828330)}), true}))}, nil}), cljs_core.Meta.X_invoke_Arity1(loc))
				}
			}
		})
	}(&cljs_core.AFn{})

	Replace = func(replace *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(replace, 2, func(loc interface{}, node interface{}) interface{} {
			{
				var vec__49 = loc
				var ___ = cljs_core.Nth.X_invoke_Arity3(vec__49, float64(0), nil)
				var path = cljs_core.Nth.X_invoke_Arity3(vec__49, float64(1), nil)
				_, _, _ = vec__49, ___, path
				return cljs_core.With_meta.X_invoke_Arity2((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{node, cljs_core.Assoc.X_invoke_Arity3(path, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "changed?", Fqn: "changed?", X_hash: float64(-437828330)}), true)}, nil}), cljs_core.Meta.X_invoke_Arity1(loc))
			}
		})
	}(&cljs_core.AFn{})

	Edit = func(edit *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(edit, 2, func(loc_f_args__ ...interface{}) interface{} {
			var loc = loc_f_args__[0]
			var f = loc_f_args__[1]
			var args = cljs_core.Seq.Arity1IQ(loc_f_args__[2])
			_, _, _ = loc, f, args
			return Replace.X_invoke_Arity2(loc, cljs_core.Apply.X_invoke_Arity3(f, Node.X_invoke_Arity1(loc), args))
		})
	}(&cljs_core.AFn{})

	Insert_child = func(insert_child *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(insert_child, 2, func(loc interface{}, item interface{}) interface{} {
			return Replace.X_invoke_Arity2(loc, Make_node.X_invoke_Arity3(loc, Node.X_invoke_Arity1(loc), cljs_core.Cons.X_invoke_Arity2(item, Children.X_invoke_Arity1(loc)).(*cljs_core.CljsCoreCons)))
		})
	}(&cljs_core.AFn{})

	Append_child = func(append_child *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(append_child, 2, func(loc interface{}, item interface{}) interface{} {
			return Replace.X_invoke_Arity2(loc, Make_node.X_invoke_Arity3(loc, Node.X_invoke_Arity1(loc), cljs_core.Concat.X_invoke_Arity2(Children.X_invoke_Arity1(loc), (&cljs_core.CljsCorePersistentVector{nil, float64(1), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{item}, nil})).(*cljs_core.CljsCoreLazySeq)))
		})
	}(&cljs_core.AFn{})

	Next = func(next *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(next, 1, func(loc interface{}) interface{} {
			if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCoreKeyword{Ns: nil, Name: "end", Fqn: "end", X_hash: float64(-268185958)}), func() interface{} {
				var G__51 = float64(1)
				_ = G__51
				return loc.(cljs_core.CljsCoreIFn).X_invoke_Arity1(G__51)
			}()) {
				return loc
			} else {
				{
					var or__171__auto__ = func() interface{} {
						var and__159__auto__ = Branch_QMARK_.X_invoke_Arity1(loc)
						_ = and__159__auto__
						if cljs_core.Truth_(and__159__auto__) {
							return Down.X_invoke_Arity1(loc)
						} else {
							return and__159__auto__
						}
					}()
					_ = or__171__auto__
					if cljs_core.Truth_(or__171__auto__) {
						return or__171__auto__
					} else {
						{
							var or__171__auto_____1 = Right.X_invoke_Arity1(loc)
							_ = or__171__auto_____1
							if cljs_core.Truth_(or__171__auto_____1) {
								return or__171__auto_____1
							} else {
								{
									var p interface{} = loc
									_ = p
									for {
										if cljs_core.Truth_(Up.X_invoke_Arity1(p)) {
											{
												var or__171__auto_____2 = Right.X_invoke_Arity1(Up.X_invoke_Arity1(p))
												_ = or__171__auto_____2
												if cljs_core.Truth_(or__171__auto_____2) {
													return or__171__auto_____2
												} else {
													p = Up.X_invoke_Arity1(p)
													continue
												}
											}
										} else {
											return (&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{Node.X_invoke_Arity1(p), (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "end", Fqn: "end", X_hash: float64(-268185958)})}, nil})
										}
									}
								}
							}
						}
					}
				}
			}
		})
	}(&cljs_core.AFn{})

	Prev = func(prev *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(prev, 1, func(loc interface{}) interface{} {
			{
				var temp__4386__auto__ = Left.X_invoke_Arity1(loc)
				_ = temp__4386__auto__
				if cljs_core.Truth_(temp__4386__auto__) {
					{
						var lloc = temp__4386__auto__
						_ = lloc
						{
							var loc___1 interface{} = lloc
							_ = loc___1
							for {
								{
									var temp__4386__auto_____1 = func() interface{} {
										var and__159__auto__ = Branch_QMARK_.X_invoke_Arity1(loc___1)
										_ = and__159__auto__
										if cljs_core.Truth_(and__159__auto__) {
											return Down.X_invoke_Arity1(loc___1)
										} else {
											return and__159__auto__
										}
									}()
									_ = temp__4386__auto_____1
									if cljs_core.Truth_(temp__4386__auto_____1) {
										{
											var child = temp__4386__auto_____1
											_ = child
											loc___1 = Rightmost.X_invoke_Arity1(child)
											continue
										}
									} else {
										return loc___1
									}
								}
							}
						}
					}
				} else {
					return Up.X_invoke_Arity1(loc)
				}
			}
		})
	}(&cljs_core.AFn{})

	End_QMARK_ = func(end_QMARK_ *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(end_QMARK_, 1, func(loc interface{}) interface{} {
			return cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCoreKeyword{Ns: nil, Name: "end", Fqn: "end", X_hash: float64(-268185958)}), func() interface{} {
				var G__53 = float64(1)
				_ = G__53
				return loc.(cljs_core.CljsCoreIFn).X_invoke_Arity1(G__53)
			}())
		})
	}(&cljs_core.AFn{})

	Remove = func(remove *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(remove, 1, func(loc interface{}) interface{} {
			{
				var vec__56 = loc
				var node = cljs_core.Nth.X_invoke_Arity3(vec__56, float64(0), nil)
				var map__57 = cljs_core.Nth.X_invoke_Arity3(vec__56, float64(1), nil)
				var map__57___1 = func() interface{} {
					if cljs_core.Seq_QMARK_.Arity1IB(map__57) {
						return cljs_core.Apply.X_invoke_Arity2(cljs_core.Hash_map, map__57)
					} else {
						return map__57
					}
				}()
				var path = map__57___1
				var l = cljs_core.Get.X_invoke_Arity2(map__57___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}))
				var ppath = cljs_core.Get.X_invoke_Arity2(map__57___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "ppath", Fqn: "ppath", X_hash: float64(-1758182784)}))
				var pnodes = cljs_core.Get.X_invoke_Arity2(map__57___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "pnodes", Fqn: "pnodes", X_hash: float64(1739080565)}))
				var rs = cljs_core.Get.X_invoke_Arity2(map__57___1, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "r", Fqn: "r", X_hash: float64(-471384190)}))
				_, _, _, _, _, _, _, _, _ = vec__56, node, map__57, map__57___1, path, l, ppath, pnodes, rs
				if cljs_core.Nil_(path) {
					panic("Remove at top")
				} else {
					if cljs_core.Count.X_invoke_Arity1(l).(float64) > float64(0) {
						{
							var loc___1 interface{} = cljs_core.With_meta.X_invoke_Arity2((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{cljs_core.Peek.X_invoke_Arity1(l), cljs_core.Assoc.X_invoke_ArityVariadic(path, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "l", Fqn: "l", X_hash: float64(1395893423)}), cljs_core.Pop.X_invoke_Arity1(l), cljs_core.Array_seq.X_invoke_Arity1([]interface{}{(&cljs_core.CljsCoreKeyword{Ns: nil, Name: "changed?", Fqn: "changed?", X_hash: float64(-437828330)}), true}))}, nil}), cljs_core.Meta.X_invoke_Arity1(loc))
							_ = loc___1
							for {
								{
									var temp__4386__auto__ = func() interface{} {
										var and__159__auto__ = Branch_QMARK_.X_invoke_Arity1(loc___1)
										_ = and__159__auto__
										if cljs_core.Truth_(and__159__auto__) {
											return Down.X_invoke_Arity1(loc___1)
										} else {
											return and__159__auto__
										}
									}()
									_ = temp__4386__auto__
									if cljs_core.Truth_(temp__4386__auto__) {
										{
											var child = temp__4386__auto__
											_ = child
											loc___1 = Rightmost.X_invoke_Arity1(child)
											continue
										}
									} else {
										return loc___1
									}
								}
							}
						}
					} else {
						return cljs_core.With_meta.X_invoke_Arity2((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{Make_node.X_invoke_Arity3(loc, cljs_core.Peek.X_invoke_Arity1(pnodes), rs), func() interface{} {
							var and__159__auto__ = ppath
							_ = and__159__auto__
							if cljs_core.Truth_(and__159__auto__) {
								return cljs_core.Assoc.X_invoke_Arity3(ppath, (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "changed?", Fqn: "changed?", X_hash: float64(-437828330)}), true)
							} else {
								return and__159__auto__
							}
						}()}, nil}), cljs_core.Meta.X_invoke_Arity1(loc))
					}
				}
			}
		})
	}(&cljs_core.AFn{})

}
示例#5
0
func init() {
	Test_string = func(test_string *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(test_string, 0, func() interface{} {
			if cljs_core.X_EQ_.Arity2IIB("", clojure_string.Reverse.X_invoke_Arity1("")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"\" (s/reverse \"\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("tab", clojure_string.Reverse.X_invoke_Arity1("bat")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"tab\" (s/reverse \"bat\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("faabar", clojure_string.Replace.X_invoke_Arity3("foobar", "o", "a")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"faabar\" (s/replace \"foobar\" \\o \\a))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("barbarbar", clojure_string.Replace.X_invoke_Arity3("foobarfoo", "foo", "bar")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"barbarbar\" (s/replace \"foobarfoo\" \"foo\" \"bar\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("FOObarFOO", clojure_string.Replace.X_invoke_Arity3("foobarfoo", (&js.RegExp{Pattern: `foo`, Flags: ``}), clojure_string.Upper_case)) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"FOObarFOO\" (s/replace \"foobarfoo\" #\"foo\" s/upper-case))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("barbar)foo", clojure_string.Replace.X_invoke_Arity3("foo(bar)foo", "foo(", "bar")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"barbar)foo\" (s/replace \"foo(bar)foo\" \"foo(\" \"bar\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("", clojure_string.Join.X_invoke_Arity1(nil)) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"\" (s/join nil))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("", clojure_string.Join.X_invoke_Arity1(cljs_core.CljsCorePersistentVector_EMPTY)) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"\" (s/join []))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("1", clojure_string.Join.X_invoke_Arity1((&cljs_core.CljsCorePersistentVector{nil, float64(1), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{float64(1)}, nil}))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"1\" (s/join [1]))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("12", clojure_string.Join.X_invoke_Arity1((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{float64(1), float64(2)}, nil}))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"12\" (s/join [1 2]))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("1,2,3", clojure_string.Join.X_invoke_Arity2(",", (&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{float64(1), float64(2), float64(3)}, nil}))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"1,2,3\" (s/join \\, [1 2 3]))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("", clojure_string.Join.X_invoke_Arity2(",", cljs_core.CljsCorePersistentVector_EMPTY)) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"\" (s/join \\, []))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("1 and-a 2 and-a 3", clojure_string.Join.X_invoke_Arity2(" and-a ", (&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{float64(1), float64(2), float64(3)}, nil}))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"1 and-a 2 and-a 3\" (s/join \" and-a \" [1 2 3]))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("FOOBAR", clojure_string.Upper_case.X_invoke_Arity1("Foobar")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"FOOBAR\" (s/upper-case \"Foobar\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("foobar", clojure_string.Lower_case.X_invoke_Arity1("FooBar")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"foobar\" (s/lower-case \"FooBar\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("Foobar", clojure_string.Capitalize.X_invoke_Arity1("foobar")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"Foobar\" (s/capitalize \"foobar\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("Foobar", clojure_string.Capitalize.X_invoke_Arity1("FOOBAR")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"Foobar\" (s/capitalize \"FOOBAR\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{"a", "b"}, nil}), clojure_string.Split.X_invoke_Arity2("a-b", (&js.RegExp{Pattern: `-`, Flags: ``}))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= [\"a\" \"b\"] (s/split \"a-b\" #\"-\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{"a", "b", "c"}, nil}), clojure_string.Split.X_invoke_Arity3("a-b-c", (&js.RegExp{Pattern: `-`, Flags: ``}), float64(-1))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= [\"a\" \"b\" \"c\"] (s/split \"a-b-c\" #\"-\" -1))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{"a", "b", "c"}, nil}), clojure_string.Split.X_invoke_Arity3("a-b-c", (&js.RegExp{Pattern: `-`, Flags: ``}), float64(0))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= [\"a\" \"b\" \"c\"] (s/split \"a-b-c\" #\"-\" 0))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCorePersistentVector{nil, float64(1), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{"a-b-c"}, nil}), clojure_string.Split.X_invoke_Arity3("a-b-c", (&js.RegExp{Pattern: `-`, Flags: ``}), float64(1))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= [\"a-b-c\"] (s/split \"a-b-c\" #\"-\" 1))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCorePersistentVector{nil, float64(2), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{"a", "b-c"}, nil}), clojure_string.Split.X_invoke_Arity3("a-b-c", (&js.RegExp{Pattern: `-`, Flags: ``}), float64(2))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= [\"a\" \"b-c\"] (s/split \"a-b-c\" #\"-\" 2))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{"a", "b", "c"}, nil}), clojure_string.Split.X_invoke_Arity3("a-b-c", (&js.RegExp{Pattern: `-`, Flags: ``}), float64(3))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= [\"a\" \"b\" \"c\"] (s/split \"a-b-c\" #\"-\" 3))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{"a", "b", "c"}, nil}), clojure_string.Split.X_invoke_Arity3("a-b-c", (&js.RegExp{Pattern: `-`, Flags: ``}), float64(4))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= [\"a\" \"b\" \"c\"] (s/split \"a-b-c\" #\"-\" 4))").(string)}, ``)}))
			}
			if cljs_core.Vector_QMARK_.Arity1IB(clojure_string.Split.X_invoke_Arity2("abc", (&js.RegExp{Pattern: `-`, Flags: ``}))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(vector? (s/split \"abc\" #\"-\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCorePersistentVector{nil, float64(1), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{"a-b-c"}, nil}), clojure_string.Split.X_invoke_Arity3("a-b-c", (&js.RegExp{Pattern: `x`, Flags: ``}), float64(2))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= [\"a-b-c\"] (s/split \"a-b-c\" #\"x\" 2))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCorePersistentVector{nil, float64(5), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{"", "a", "b", "c", ""}, nil}), clojure_string.Split.X_invoke_Arity3("abc", cljs_core.Re_pattern.X_invoke_Arity1(""), float64(5))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= [\"\" \"a\" \"b\" \"c\" \"\"] (s/split \"abc\" (re-pattern \"\") 5))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCorePersistentVector{nil, float64(1), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{"a"}, nil}), clojure_string.Split.X_invoke_Arity2("ab", (&js.RegExp{Pattern: `b`, Flags: ``}))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= [\"a\"] (s/split \"ab\" #\"b\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB(cljs_core.CljsCorePersistentVector_EMPTY, clojure_string.Split.X_invoke_Arity2("ab", (&js.RegExp{Pattern: `ab`, Flags: ``}))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= [] (s/split \"ab\" #\"ab\"))").(string)}, ``)}))
			}
			{
				var result_1 = clojure_string.Split_lines.X_invoke_Arity1("one\ntwo\r\nthree")
				_ = result_1
				if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{"one", "two", "three"}, nil}), result_1) {
				} else {
					panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= [\"one\" \"two\" \"three\"] result)").(string)}, ``)}))
				}
				if cljs_core.Vector_QMARK_.Arity1IB(result_1) {
				} else {
					panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(vector? result)").(string)}, ``)}))
				}
			}
			if cljs_core.X_EQ_.Arity2IIB(cljs_core.CljsCoreList_EMPTY.X_conj_Arity2("foo"), clojure_string.Split_lines.X_invoke_Arity1("foo")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= (list \"foo\") (s/split-lines \"foo\"))").(string)}, ``)}))
			}
			if cljs_core.Truth_(clojure_string.Blank_QMARK_.X_invoke_Arity1(nil)) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(s/blank? nil)").(string)}, ``)}))
			}
			if cljs_core.Truth_(clojure_string.Blank_QMARK_.X_invoke_Arity1("")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(s/blank? \"\")").(string)}, ``)}))
			}
			if cljs_core.Truth_(clojure_string.Blank_QMARK_.X_invoke_Arity1(" ")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(s/blank? \" \")").(string)}, ``)}))
			}
			if cljs_core.Truth_(clojure_string.Blank_QMARK_.X_invoke_Arity1(" \t \n  \r ")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(s/blank? \" \\t \\n  \\r \")").(string)}, ``)}))
			}
			if cljs_core.Not.Arity1IB(clojure_string.Blank_QMARK_.X_invoke_Arity1("  foo  ")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(not (s/blank? \"  foo  \"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("&lt;foo&amp;bar&gt;", clojure_string.Escape.X_invoke_Arity2("<foo&bar>", (&cljs_core.CljsCorePersistentArrayMap{nil, float64(3), []interface{}{"&", "&amp;", "<", "&lt;", ">", "&gt;"}, nil}))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"&lt;foo&amp;bar&gt;\" (s/escape \"<foo&bar>\" {\\& \"&amp;\", \\< \"&lt;\", \\> \"&gt;\"}))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB(" \\\"foo\\\" ", clojure_string.Escape.X_invoke_Arity2(" \"foo\" ", (&cljs_core.CljsCorePersistentArrayMap{nil, float64(1), []interface{}{"\"", "\\\""}, nil}))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \" \\\\\\\"foo\\\\\\\" \" (s/escape \" \\\"foo\\\" \" {\\\" \"\\\\\\\"\"}))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("faabor", clojure_string.Escape.X_invoke_Arity2("foobar", (&cljs_core.CljsCorePersistentArrayMap{nil, float64(2), []interface{}{"a", "o", "o", "a"}, nil}))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"faabor\" (s/escape \"foobar\" {\\a \\o, \\o \\a}))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("barbarfoo", clojure_string.Replace_first.X_invoke_Arity3("foobarfoo", "foo", "bar")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"barbarfoo\" (s/replace-first \"foobarfoo\" \"foo\" \"bar\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("barbarfoo", clojure_string.Replace_first.X_invoke_Arity3("foobarfoo", (&js.RegExp{Pattern: `foo`, Flags: ``}), "bar")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"barbarfoo\" (s/replace-first \"foobarfoo\" #\"foo\" \"bar\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("z.ology", clojure_string.Replace_first.X_invoke_Arity3("zoology", "o", ".")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"z.ology\" (s/replace-first \"zoology\" \\o \\.))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("FOObarfoo", clojure_string.Replace_first.X_invoke_Arity3("foobarfoo", (&js.RegExp{Pattern: `foo`, Flags: ``}), clojure_string.Upper_case)) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"FOObarfoo\" (s/replace-first \"foobarfoo\" #\"foo\" s/upper-case))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("foo ", clojure_string.Triml.X_invoke_Arity1(" foo ")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"foo \" (s/triml \" foo \"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("", clojure_string.Triml.X_invoke_Arity1("   ")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"\" (s/triml \"   \"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB(" foo", clojure_string.Trimr.X_invoke_Arity1(" foo ")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \" foo\" (s/trimr \" foo \"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("", clojure_string.Trimr.X_invoke_Arity1("   ")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"\" (s/trimr \"   \"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("foo", clojure_string.Trim.X_invoke_Arity1("  foo  \r\n")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"foo\" (s/trim \"  foo  \\r\\n\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("foo", clojure_string.Trim_newline.X_invoke_Arity1("foo\n")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"foo\" (s/trim-newline \"foo\\n\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("foo", clojure_string.Trim_newline.X_invoke_Arity1("foo\r\n")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"foo\" (s/trim-newline \"foo\\r\\n\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("foo", clojure_string.Trim_newline.X_invoke_Arity1("foo")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"foo\" (s/trim-newline \"foo\"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("foo\r ", clojure_string.Trim_newline.X_invoke_Arity1("foo\r ")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"foo\\r \" (s/trim-newline \"foo\\r \"))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB("", clojure_string.Trim_newline.X_invoke_Arity1("")) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= \"\" (s/trim-newline \"\"))").(string)}, ``)}))
			}
			return (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "ok", Fqn: "ok", X_hash: float64(967785236)})
		})
	}(&cljs_core.AFn{})

}
示例#6
0
func init() {
	X_PLUS_ = cljs_core.X___

	Test_ns = func(test_ns *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(test_ns, 0, func() interface{} {
			if cljs_core.X_EQ_.Arity2IIB(float64(4), ((float64(2) + float64(1)) + float64(1))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= 4 (clojure.core/+ 2 1 1))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB(float64(0), func() interface{} {
				var G__13 = float64(2)
				var G__14 = float64(1)
				var G__15 = float64(1)
				_, _, _ = G__13, G__14, G__15
				return X_PLUS_.(cljs_core.CljsCoreIFn).X_invoke_Arity3(G__13, G__14, G__15)
			}()) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= 0 (cljs.ns-test/+ 2 1 1))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB(float64(0), func() interface{} {
				var G__16 = float64(2)
				var G__17 = float64(1)
				var G__18 = float64(1)
				_, _, _ = G__16, G__17, G__18
				return X_PLUS_.(cljs_core.CljsCoreIFn).X_invoke_Arity3(G__16, G__17, G__18)
			}()) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= 0 (+ 2 1 1))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB(float64(123), cljs_ns_test_foo.Baz.X_invoke_Arity0().(float64)) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= 123 (baz))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB(float64(123), cljs_ns_test_bar.Quux.X_invoke_Arity0().(float64)) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= 123 (quux))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB(cljs_core.Range_.X_invoke_Arity1(float64(5)).(*cljs_core.CljsCoreRange), func() *cljs_core.CljsCoreLazySeq {
				var iter__4951__auto__ = func(iter__19 *cljs_core.AFn) *cljs_core.AFn {
					return cljs_core.Fn(iter__19, 1, func(s__20 interface{}) interface{} {
						return (&cljs_core.CljsCoreLazySeq{nil, func(G__25 *cljs_core.AFn) *cljs_core.AFn {
							return cljs_core.Fn(G__25, 0, func() interface{} {
								{
									var s__20___1 interface{} = s__20
									_ = s__20___1
									for {
										{
											var temp__4388__auto__ = cljs_core.Seq.Arity1IQ(s__20___1)
											_ = temp__4388__auto__
											if cljs_core.Truth_(temp__4388__auto__) {
												{
													var s__20___2 = temp__4388__auto__
													_ = s__20___2
													if cljs_core.Chunked_seq_QMARK_.Arity1IB(s__20___2) {
														{
															var c__4949__auto__ = cljs_core.Chunk_first.X_invoke_Arity1(s__20___2)
															var size__4950__auto__ = float64(cljs_core.Int32_(cljs_core.Count.X_invoke_Arity1(c__4949__auto__).(float64)))
															var b__22 = cljs_core.Chunk_buffer.X_invoke_Arity1(size__4950__auto__).(*cljs_core.CljsCoreChunkBuffer)
															_, _, _ = c__4949__auto__, size__4950__auto__, b__22
															if func() bool {
																var i__21 = float64(cljs_core.Int32_(float64(0)))
																_ = i__21
																for {
																	if i__21 < size__4950__auto__ {
																		{
																			var x = cljs_core.Native_invoke_instance_method.X_invoke_Arity3(c__4949__auto__, "Nth", []interface{}{i__21})
																			_ = x
																			cljs_core.Chunk_append.X_invoke_Arity2(b__22, x)
																			i__21 = (i__21 + float64(1))
																			continue
																		}
																	} else {
																		return true
																	}
																}
															}() {
																return cljs_core.Chunk_cons.X_invoke_Arity2(cljs_core.Chunk.X_invoke_Arity1(b__22), iter__19.X_invoke_Arity1(cljs_core.Chunk_rest.X_invoke_Arity1(s__20___2)).(*cljs_core.CljsCoreLazySeq))
															} else {
																return cljs_core.Chunk_cons.X_invoke_Arity2(cljs_core.Chunk.X_invoke_Arity1(b__22), nil)
															}
														}
													} else {
														{
															var x = cljs_core.First.X_invoke_Arity1(s__20___2)
															_ = x
															return cljs_core.Cons.X_invoke_Arity2(x, iter__19.X_invoke_Arity1(cljs_core.Rest.Arity1IQ(s__20___2)).(*cljs_core.CljsCoreLazySeq)).(*cljs_core.CljsCoreCons)
														}
													}
												}
											} else {
												return nil
											}
										}
									}
								}
							})
						}(&cljs_core.AFn{}), nil, nil})
					})
				}(&cljs_core.AFn{})
				_ = iter__4951__auto__
				return iter__4951__auto__.X_invoke_Arity1(cljs_core.Range_.X_invoke_Arity1(float64(5)).(*cljs_core.CljsCoreRange)).(*cljs_core.CljsCoreLazySeq)
			}()) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= (range 5) (lang/for [x (range 5)] x))").(string)}, ``)}))
			}
			if cljs_core.X_EQ_.Arity2IIB((&cljs_core.CljsCorePersistentHashSet{nil, &cljs_core.CljsCorePersistentArrayMap{nil, float64(3), []interface{}{float64(1), nil, float64(3), nil, float64(2), nil}, nil}, nil}), clojure_set.Union.X_invoke_Arity2((&cljs_core.CljsCorePersistentHashSet{nil, &cljs_core.CljsCorePersistentArrayMap{nil, float64(1), []interface{}{float64(1), nil}, nil}, nil}), (&cljs_core.CljsCorePersistentHashSet{nil, &cljs_core.CljsCorePersistentArrayMap{nil, float64(2), []interface{}{float64(3), nil, float64(2), nil}, nil}, nil}))) {
			} else {
				panic((&js.Error{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Assert failed: ").(string), cljs_core.Str.X_invoke_Arity1("(= #{1 3 2} (s/union #{1} #{3 2}))").(string)}, ``)}))
			}
			return (&cljs_core.CljsCoreKeyword{Ns: nil, Name: "ok", Fqn: "ok", X_hash: float64(967785236)})
		})
	}(&cljs_core.AFn{})

}
示例#7
0
func init() {
	Atom_diff = func(atom_diff *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(atom_diff, 2, func(a interface{}, b interface{}) interface{} {
			if cljs_core.X_EQ_.Arity2IIB(a, b) {
				return (&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{nil, nil, a}, nil})
			} else {
				return (&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{a, b, nil}, nil})
			}
		})
	}(&cljs_core.AFn{})

	Vectorize = func(vectorize *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(vectorize, 1, func(m interface{}) interface{} {
			if cljs_core.Truth_(cljs_core.Seq.Arity1IQ(m)) {
				return cljs_core.Reduce.X_invoke_Arity3(func(G__5 *cljs_core.AFn) *cljs_core.AFn {
					return cljs_core.Fn(G__5, 2, func(result interface{}, p__3 interface{}) interface{} {
						{
							var vec__4 = p__3
							var k = cljs_core.Nth.X_invoke_Arity3(vec__4, float64(0), nil)
							var v = cljs_core.Nth.X_invoke_Arity3(vec__4, float64(1), nil)
							_, _, _ = vec__4, k, v
							return cljs_core.Assoc.X_invoke_Arity3(result, k, v)
						}
					})
				}(&cljs_core.AFn{}), cljs_core.Vec.X_invoke_Arity1(cljs_core.Repeat.X_invoke_Arity2(cljs_core.Apply.X_invoke_Arity2(cljs_core.Max, cljs_core.Keys.X_invoke_Arity1(m)), nil).(*cljs_core.CljsCoreLazySeq)), m)
			} else {
				return nil
			}
		})
	}(&cljs_core.AFn{})

	Diff_associative_key = func(diff_associative_key *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(diff_associative_key, 3, func(a interface{}, b interface{}, k interface{}) interface{} {
			{
				var va = cljs_core.Get.X_invoke_Arity2(a, k)
				var vb = cljs_core.Get.X_invoke_Arity2(b, k)
				var vec__9 = func() interface{} {
					var G__10 = va
					var G__11 = vb
					_, _ = G__10, G__11
					return Diff.X_invoke_Arity2(G__10, G__11)
				}()
				var a_STAR_ = cljs_core.Nth.X_invoke_Arity3(vec__9, float64(0), nil)
				var b_STAR_ = cljs_core.Nth.X_invoke_Arity3(vec__9, float64(1), nil)
				var ab = cljs_core.Nth.X_invoke_Arity3(vec__9, float64(2), nil)
				var in_a = cljs_core.Contains_QMARK_.Arity2IIB(a, k)
				var in_b = cljs_core.Contains_QMARK_.Arity2IIB(b, k)
				var same = (in_a) && (in_b) && ((!(cljs_core.Nil_(ab))) || ((cljs_core.Nil_(va)) && (cljs_core.Nil_(vb))))
				_, _, _, _, _, _, _, _, _ = va, vb, vec__9, a_STAR_, b_STAR_, ab, in_a, in_b, same
				return (&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{func() interface{} {
					if (in_a) && ((!(cljs_core.Nil_(a_STAR_))) || (!(same))) {
						return cljs_core.CljsCorePersistentArrayMap_FromArray.X_invoke_Arity3([]interface{}{k, a_STAR_}, true, false).(*cljs_core.CljsCorePersistentArrayMap)
					} else {
						return nil
					}
				}(), func() interface{} {
					if (in_b) && ((!(cljs_core.Nil_(b_STAR_))) || (!(same))) {
						return cljs_core.CljsCorePersistentArrayMap_FromArray.X_invoke_Arity3([]interface{}{k, b_STAR_}, true, false).(*cljs_core.CljsCorePersistentArrayMap)
					} else {
						return nil
					}
				}(), func() interface{} {
					if cljs_core.Truth_(same) {
						return cljs_core.CljsCorePersistentArrayMap_FromArray.X_invoke_Arity3([]interface{}{k, ab}, true, false).(*cljs_core.CljsCorePersistentArrayMap)
					} else {
						return nil
					}
				}()}, nil})
			}
		})
	}(&cljs_core.AFn{})

	Diff_associative = func(diff_associative *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(diff_associative, 3, func(a interface{}, b interface{}) interface{} {
			return diff_associative.X_invoke_Arity3(a, b, clojure_set.Union.X_invoke_Arity2(cljs_core.Keys.X_invoke_Arity1(a), cljs_core.Keys.X_invoke_Arity1(b)))
		}, func(a interface{}, b interface{}, ks interface{}) interface{} {
			return cljs_core.Reduce.X_invoke_Arity3(func(G__15 *cljs_core.AFn) *cljs_core.AFn {
				return cljs_core.Fn(G__15, 2, func(diff1 interface{}, diff2 interface{}) interface{} {
					return cljs_core.Doall.X_invoke_Arity1(cljs_core.Map_.X_invoke_Arity3(cljs_core.Merge, diff1, diff2).(*cljs_core.CljsCoreLazySeq))
				})
			}(&cljs_core.AFn{}), (&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{nil, nil, nil}, nil}), cljs_core.Map_.X_invoke_Arity2(cljs_core.Partial.X_invoke_Arity3(Diff_associative_key, a, b).(cljs_core.CljsCoreIFn), ks).(*cljs_core.CljsCoreLazySeq))
		})
	}(&cljs_core.AFn{})

	Diff_sequential = func(diff_sequential *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(diff_sequential, 2, func(a interface{}, b interface{}) interface{} {
			return cljs_core.Vec.X_invoke_Arity1(cljs_core.Map_.X_invoke_Arity2(Vectorize, Diff_associative.X_invoke_Arity3(func() interface{} {
				if cljs_core.Vector_QMARK_.Arity1IB(a) {
					return a
				} else {
					return cljs_core.Vec.X_invoke_Arity1(a)
				}
			}(), func() interface{} {
				if cljs_core.Vector_QMARK_.Arity1IB(b) {
					return b
				} else {
					return cljs_core.Vec.X_invoke_Arity1(b)
				}
			}(), cljs_core.Range_.X_invoke_Arity1(func(x, y float64) float64 {
				if x > y {
					return x
				} else {
					return y
				}
			}(cljs_core.Count.X_invoke_Arity1(a).(float64), cljs_core.Count.X_invoke_Arity1(b).(float64))).(*cljs_core.CljsCoreRange))).(*cljs_core.CljsCoreLazySeq))
		})
	}(&cljs_core.AFn{})

	Diff_set = func(diff_set *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(diff_set, 2, func(a interface{}, b interface{}) interface{} {
			return (&cljs_core.CljsCorePersistentVector{nil, float64(3), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{cljs_core.Not_empty.X_invoke_Arity1(clojure_set.Difference.X_invoke_Arity2(a, b)), cljs_core.Not_empty.X_invoke_Arity1(clojure_set.Difference.X_invoke_Arity2(b, a)), cljs_core.Not_empty.X_invoke_Arity1(clojure_set.Intersection.X_invoke_Arity2(a, b))}, nil})
		})
	}(&cljs_core.AFn{})

	Equality_partition = func(equality_partition *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(equality_partition, 1, func(x interface{}) interface{} {
			return cljs_core.Decorate_(x).(ClojureDataEqualityPartition).Equality_partition_Arity1()
		})
	}(&cljs_core.AFn{})

	Diff_similar = func(diff_similar *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(diff_similar, 2, func(a interface{}, b interface{}) interface{} {
			return cljs_core.Decorate_(a).(ClojureDataDiff).Diff_similar_Arity2(b)
		})
	}(&cljs_core.AFn{})

}
示例#8
0
func init() {
	Read_2_chars = func(read_2_chars *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(read_2_chars, 1, func(reader interface{}) interface{} {
			return strings.Join([]string{cljs_core.Str.X_invoke_Arity1(cljs_core.Decorate_(reader).(CljsReaderPushbackReader).Read_char_Arity1()).(string), cljs_core.Str.X_invoke_Arity1(cljs_core.Decorate_(reader).(CljsReaderPushbackReader).Read_char_Arity1()).(string)}, ``)
		})
	}(&cljs_core.AFn{})

	Read_4_chars = func(read_4_chars *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(read_4_chars, 1, func(reader interface{}) interface{} {
			return strings.Join([]string{cljs_core.Str.X_invoke_Arity1(cljs_core.Decorate_(reader).(CljsReaderPushbackReader).Read_char_Arity1()).(string), cljs_core.Str.X_invoke_Arity1(cljs_core.Decorate_(reader).(CljsReaderPushbackReader).Read_char_Arity1()).(string), cljs_core.Str.X_invoke_Arity1(cljs_core.Decorate_(reader).(CljsReaderPushbackReader).Read_char_Arity1()).(string), cljs_core.Str.X_invoke_Arity1(cljs_core.Decorate_(reader).(CljsReaderPushbackReader).Read_char_Arity1()).(string)}, ``)
		})
	}(&cljs_core.AFn{})

	Read_token = func(read_token *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(read_token, 2, func(rdr interface{}, initch interface{}) interface{} {
			{
				var sb = (&goog_string.StringBuffer{initch})
				var ch interface{} = cljs_core.Decorate_(rdr).(CljsReaderPushbackReader).Read_char_Arity1()
				_, _ = sb, ch
				for {
					if (cljs_core.Nil_(ch)) || (Whitespace_QMARK_.Arity1IB(ch)) || (Macro_terminating_QMARK_.Arity1IB(ch)) {
						cljs_core.Decorate_(rdr).(CljsReaderPushbackReader).Unread_Arity2(ch)
						return cljs_core.Native_invoke_instance_method.X_invoke_Arity3(sb, "ToString", []interface{}{})
					} else {
						sb, ch = func() *goog_string.StringBuffer {
							cljs_core.Native_invoke_instance_method.X_invoke_Arity3(sb, "Append", []interface{}{ch})
							return sb
						}(), cljs_core.Decorate_(rdr).(CljsReaderPushbackReader).Read_char_Arity1()
						continue
					}
				}
			}
		})
	}(&cljs_core.AFn{})

	Macros = func(macros *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(macros, 1, func(c interface{}) interface{} {
			if reflect.DeepEqual(c, "\"") {
				return Read_string_STAR_
			} else {
				if reflect.DeepEqual(c, ":") {
					return Read_keyword
				} else {
					if reflect.DeepEqual(c, ";") {
						return Read_comment
					} else {
						if reflect.DeepEqual(c, "'") {
							return Wrapping_reader.X_invoke_Arity1((&cljs_core.CljsCoreSymbol{Ns: nil, Name: "quote", Str: "quote", X_hash: float64(1377916282), X_meta: nil})).(cljs_core.CljsCoreIFn)
						} else {
							if reflect.DeepEqual(c, "@") {
								return Wrapping_reader.X_invoke_Arity1((&cljs_core.CljsCoreSymbol{Ns: nil, Name: "deref", Str: "deref", X_hash: float64(1494944732), X_meta: nil})).(cljs_core.CljsCoreIFn)
							} else {
								if reflect.DeepEqual(c, "^") {
									return Read_meta
								} else {
									if reflect.DeepEqual(c, "`") {
										return Not_implemented
									} else {
										if reflect.DeepEqual(c, "~") {
											return Not_implemented
										} else {
											if reflect.DeepEqual(c, "(") {
												return Read_list
											} else {
												if reflect.DeepEqual(c, ")") {
													return Read_unmatched_delimiter
												} else {
													if reflect.DeepEqual(c, "[") {
														return Read_vector
													} else {
														if reflect.DeepEqual(c, "]") {
															return Read_unmatched_delimiter
														} else {
															if reflect.DeepEqual(c, "{") {
																return Read_map
															} else {
																if reflect.DeepEqual(c, "}") {
																	return Read_unmatched_delimiter
																} else {
																	if reflect.DeepEqual(c, "\\") {
																		return func(G__169 *cljs_core.AFn) *cljs_core.AFn {
																			return cljs_core.Fn(G__169, 2, func(rdr interface{}, ___ interface{}) interface{} {
																				return cljs_core.Decorate_(rdr).(CljsReaderPushbackReader).Read_char_Arity1()
																			})
																		}(&cljs_core.AFn{})
																	} else {
																		if reflect.DeepEqual(c, "#") {
																			return Read_dispatch
																		} else {
																			return nil

																		}
																	}
																}
															}
														}
													}
												}
											}
										}
									}
								}
							}
						}
					}
				}
			}
		})
	}(&cljs_core.AFn{})

	Days_in_month = func() interface{} {
		var dim_norm = (&cljs_core.CljsCorePersistentVector{nil, float64(13), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{nil, float64(31), float64(28), float64(31), float64(30), float64(31), float64(30), float64(31), float64(31), float64(30), float64(31), float64(30), float64(31)}, nil})
		var dim_leap = (&cljs_core.CljsCorePersistentVector{nil, float64(13), float64(5), cljs_core.CljsCorePersistentVector_EMPTY_NODE, []interface{}{nil, float64(31), float64(29), float64(31), float64(30), float64(31), float64(30), float64(31), float64(31), float64(30), float64(31), float64(30), float64(31)}, nil})
		_, _ = dim_norm, dim_leap
		return cljs_core.Identity.X_invoke_Arity1(func(G__170 *cljs_core.AFn, dim_norm cljs_core.CljsCoreIVector, dim_leap cljs_core.CljsCoreIVector) *cljs_core.AFn {
			return cljs_core.Fn(G__170, 2, func(month interface{}, leap_year_QMARK_ interface{}) interface{} {
				return cljs_core.Get.X_invoke_Arity2(func() cljs_core.CljsCoreIVector {
					if cljs_core.Truth_(leap_year_QMARK_) {
						return dim_leap
					} else {
						return dim_norm
					}
				}(), month)
			})
		}(&cljs_core.AFn{}, dim_norm, dim_leap))
	}()

	Parse_timestamp = func(parse_timestamp *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(parse_timestamp, 1, func(ts interface{}) interface{} {
			{
				var temp__4386__auto__ = Parse_and_validate_timestamp.X_invoke_Arity1(ts).(cljs_core.CljsCoreIVector)
				_ = temp__4386__auto__
				if cljs_core.Truth_(temp__4386__auto__) {
					{
						var vec__172 = temp__4386__auto__
						var years = cljs_core.Nth.X_invoke_Arity3(vec__172, float64(0), nil)
						var months = cljs_core.Nth.X_invoke_Arity3(vec__172, float64(1), nil)
						var days = cljs_core.Nth.X_invoke_Arity3(vec__172, float64(2), nil)
						var hours = cljs_core.Nth.X_invoke_Arity3(vec__172, float64(3), nil)
						var minutes = cljs_core.Nth.X_invoke_Arity3(vec__172, float64(4), nil)
						var seconds = cljs_core.Nth.X_invoke_Arity3(vec__172, float64(5), nil)
						var ms = cljs_core.Nth.X_invoke_Arity3(vec__172, float64(6), nil)
						var offset = cljs_core.Nth.X_invoke_Arity3(vec__172, float64(7), nil)
						_, _, _, _, _, _, _, _, _ = vec__172, years, months, days, hours, minutes, seconds, ms, offset
						return (&js.Date{ts})
					}
				} else {
					return Reader_error.X_invoke_ArityVariadic(nil, cljs_core.Array_seq.X_invoke_Arity1([]interface{}{strings.Join([]string{cljs_core.Str.X_invoke_Arity1("Unrecognized date/time syntax: ").(string), cljs_core.Str.X_invoke_Arity1(ts).(string)}, ``)}))
				}
			}
		})
	}(&cljs_core.AFn{})

	Read_queue = func(read_queue *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(read_queue, 1, func(elems interface{}) interface{} {
			if cljs_core.Vector_QMARK_.Arity1IB(elems) {
				return cljs_core.Into.X_invoke_Arity2(cljs_core.CljsCorePersistentQueue_EMPTY, elems)
			} else {
				return Reader_error.X_invoke_ArityVariadic(nil, cljs_core.Array_seq.X_invoke_Arity1([]interface{}{"Queue literal expects a vector for its elements."}))
			}
		})
	}(&cljs_core.AFn{})

	Read_date = func(read_date *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(read_date, 1, func(s interface{}) interface{} {
			if cljs_core.Value_(s).Kind() == reflect.String {
				return Parse_timestamp.X_invoke_Arity1(s).(*js.Date)
			} else {
				return Reader_error.X_invoke_ArityVariadic(nil, cljs_core.Array_seq.X_invoke_Arity1([]interface{}{"Instance literal expects a string for its timestamp."}))
			}
		})
	}(&cljs_core.AFn{})

	Read_uuid = func(read_uuid *cljs_core.AFn) *cljs_core.AFn {
		return cljs_core.Fn(read_uuid, 1, func(uuid interface{}) interface{} {
			if cljs_core.Value_(uuid).Kind() == reflect.String {
				return (&cljs_core.CljsCoreUUID{uuid})
			} else {
				return Reader_error.X_invoke_ArityVariadic(nil, cljs_core.Array_seq.X_invoke_Arity1([]interface{}{"UUID literal expects a string as its representation."}))
			}
		})
	}(&cljs_core.AFn{})

	X_STAR_tag_table_STAR_ = cljs_core.Atom.X_invoke_Arity1((&cljs_core.CljsCorePersistentArrayMap{nil, float64(3), []interface{}{"inst", Read_date, "uuid", Read_uuid, "queue", Read_queue}, nil})).(*cljs_core.CljsCoreAtom)

}