Skip to content

Instantly share code, notes, and snippets.

View Miha-x64's full-sized avatar
🍵
へ‿(◉‿◉)‿ㄏ

Mike Miha-x64

🍵
へ‿(◉‿◉)‿ㄏ
View GitHub Profile
@Miha-x64
Miha-x64 / CollectionWrap.java
Last active February 1, 2022 12:10
Absolutely normal and safe decorator class which can be easily broken with type-casting
import java.util.Collection;
import java.util.Comparator;
import java.util.Deque;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
import java.util.NavigableSet;
import java.util.Queue;
import java.util.Set;
import java.util.SortedSet;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
public abstract class BundleKey<T> {
@NonNull final String key;
BundleKey(@NonNull String key) {
this.key = key;
Index: app/src/main/java/com/techyourchance/multithreading/demonstrations/designcoroutines/ProducerConsumerBenchmarkUseCase.kt
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- app/src/main/java/com/techyourchance/multithreading/demonstrations/designcoroutines/ProducerConsumerBenchmarkUseCase.kt (revision ce962bc96a3224ae27ff8c94ba658946362ce852)
+++ app/src/main/java/com/techyourchance/multithreading/demonstrations/designcoroutines/ProducerConsumerBenchmarkUseCase.kt (date 1572347476000)
@@ -1,17 +1,16 @@
package com.techyourchance.multithreading.demonstrations.designcoroutines
import kotlinx.collections.immutable.PersistentMap
import kotlinx.collections.immutable.PersistentSet
import kotlinx.collections.immutable.persistentSetOf
import kotlinx.collections.immutable.toPersistentMap
import org.assertj.core.api.Assertions.assertThat
import org.junit.Test
class Day18ManyWorldsInterpretation {
/**
@Miha-x64
Miha-x64 / Stats.java
Last active February 1, 2022 12:08 — forked from zhong-j-yu/Stats.java
class Stats - used with Stream.collect() to find min and max
package net.aquadc.util;
import java.util.Comparator;
import java.util.Objects;
import java.util.Optional;
import java.util.stream.Collector;
/**
* Stats of a stream of objects, including {@linkplain #size()}, {@linkplain #min()}, and {@linkplain #max()}.
* <p>This is intended to be used with {@link java.util.stream.Stream#collect}, for example</p>
@Miha-x64
Miha-x64 / Xml.java
Last active December 22, 2022 14:03
HTML/XML escaping utils, answering https://stackoverflow.com/a/61215915/3050249
import java.io.IOException;
import java.io.UncheckedIOException;
/**
* XML escaping utils.
*
* Source: https://gist.github.com/Miha-x64/4ed50f1d5593e45a452efbf456aa1db4
*/
public final class Xml {
import android.os.Handler;
import android.os.Looper;
import androidx.annotation.WorkerThread;
import java.io.File;
import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Executor;
import android.graphics.Bitmap;
import androidx.annotation.IntRange;
import androidx.annotation.NonNull;
import java.util.Arrays;
/**
* This is copied from https://stackoverflow.com/a/10028267/3050249
* and optimized for less memory consumption & better locality, and creates less GC pressure.
@Miha-x64
Miha-x64 / relativeLayout.kt
Last active April 26, 2021 18:46
RelativeLayout for Splitties Views DSL
@file:Suppress("NOTHING_TO_INLINE")
package net.aquadc.commonandroid.views
import android.content.Context
import android.view.View
import android.widget.RelativeLayout
import android.widget.RelativeLayout.TRUE
import androidx.annotation.IdRes
import splitties.views.dsl.core.wrapContent
import kotlin.contracts.ExperimentalContracts
package net.aquadc.util;
import java.io.IOException;
import java.io.UncheckedIOException;
import java.util.Iterator;
import java.util.function.Consumer;
import java.util.stream.Stream;
public final class Iterators {
private Iterators() {}