How do I dropdown?
This is how you dropdown.<details>
<summary>How do I dropdown?</summary>
This is how you dropdown.
<details>
<summary>How do I dropdown?</summary>
This is how you dropdown.
This is a set up for projects which want to check in only their source files, but have their gh-pages branch automatically updated with some compiled output every time they push.
You want a script that does a local compile to e.g. an out/ directory. Let's call this compile.sh for our purposes, but for your project it might be npm build or gulp make-docs or anything similar.
The out/ directory should contain everything you want deployed to gh-pages. That almost always includes an index.html.
| sealed trait TreeLike[M[_]] { | |
| def node[A](f: M[A], g: M[A]): M[A] | |
| } | |
| sealed trait Tree[+A] { self => | |
| def flatMap[B](f: A => Tree[B]): Tree[B] = self match { | |
| case Leaf(a) => f(a) | |
| case Node(l, r) => Node(l.flatMap(f), r.flatMap(f)) | |
| } | |
| } |
| import static java.lang.System.*; | |
| import java.util.function.BiFunction; | |
| import java.util.function.Function; | |
| // Implementation of a pseudo-GADT in Java, translating the examples from | |
| // http://www.cs.ox.ac.uk/ralf.hinze/publications/With.pdf | |
| // The technique presented below is, in fact, just an encoding of a normal Algebraic Data Type | |
| // using a variation of the visitor pattern + the application of the Yoneda lemma to make it | |
| // isomorphic to the targeted 'GADT'. |
| package labs; | |
| import java.lang.invoke.MethodHandles; | |
| import java.lang.reflect.InvocationHandler; | |
| import java.lang.reflect.Method; | |
| import java.lang.reflect.Proxy; | |
| import java.util.Arrays; | |
| import java.util.concurrent.ConcurrentHashMap; | |
| import java.util.concurrent.ConcurrentMap; | |
| import java.util.stream.Collectors; |