This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd"> | |
<Configure class="org.eclipse.jetty.webapp.WebAppContext"> | |
<Call name="addSystemClass"> | |
<Arg>org.graalvm.</Arg> | |
</Call> | |
</Configure> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def logJvmInfo(): Unit = { | |
val header: List[String] = | |
"System Property" :: "Value" :: Nil | |
val data: List[List[String]] = | |
sys.props | |
.filterKeys(_.matches("""^(java\.(runtime|spec|version|vm)|jvmci|os\.).*""")) | |
.toList | |
.sorted | |
.map(x => x._1 :: x._2 :: Nil) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.io.{Closeable, InputStream, PrintWriter, Reader} | |
import java.net.URL | |
import java.sql.{Blob, CallableStatement, Clob, Connection, DatabaseMetaData, Date, NClob, ParameterMetaData, PreparedStatement, Ref, ResultSet, ResultSetMetaData, RowId, SQLWarning, SQLXML, Savepoint, Statement, Struct, Time, Timestamp} | |
import java.util.{Calendar, Properties} | |
import java.{sql, util} | |
import java.util.concurrent.Executor | |
import java.util.logging.Logger | |
import javax.sql.DataSource | |
trait SqlTracer { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Overview of how this works: | |
// 1. Initialisation data is used to create an instance of LoadedRoot. | |
// 2. LoadedRoot contains a component which is the virtual top-level component. | |
// It uses the initialisation data and can be sure that it won't change (a guarantee you don't have with component props). | |
// It's the only component to have state. | |
// The state can applies to the entire SPA, all routes. | |
// It gets told by the router which page to render. | |
// It can house logic that applies when certain pages change to certain other pages. | |
// 3. LoadedRoot is passed to Routes.routerConfig. | |
// Routes.routerConfig creates a config that sends all routes to the LoadedRoot component, using the Page & RouterCtl as props. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package shipreq.webapp.base.protocol | |
import boopickle._ | |
object BinCodecGeneric extends BasicImplicitPicklers with TuplePicklers { | |
@inline implicit class PicklerExt[A](private val p: Pickler[A]) extends AnyVal { | |
// ... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Can't use the usual morphisms, cata = depth-first, ana = breadth-first evaluation order. | |
// You'd think there'd be a way to describe the effects and execute them in different order but I stopped trying. | |
def pickleFix[F[_]: Functor](implicit p: Pickler[F[Unit]]): Pickler[Fix[F]] = | |
new Pickler[Fix[F]] { | |
override def pickle(f: Fix[F])(implicit state: PickleState): Unit = { | |
// val fUnit = Functor[F].void(f.unfix) | |
// p.pickle(fUnit) | |
// Functor[F].map(f.unfix)(pickle) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
._b0{color:#000}._b2{color:#c00}._b3 svg{max-width:100%}._b4{width:24px !important;text-align:center !important}._b5{padding-bottom:1rem;padding-top:0.5rem}._b6:first-child{margin-top:0 !important}._b6:not(:first-child){margin-top:1.8em !important}._b6{margin-bottom:0.2em !important;padding-top:0.8em !important;padding-bottom:0.3em !important}._b7{margin-top:0 !important}._b8{cursor:pointer}._b9{text-align:center;padding-top:2.7em !important;height:6.8em !important;-moz-flex-grow:0 !important;-webkit-flex-grow:0 !important;-ms-flex-grow:0 !important;-o-flex-grow:0 !important;flex-grow:0 !important}._ba{font-size:3rem !important}._bb{border-color:red !important}._bc{margin-bottom:1em}._bc tr:nth-child(odd) td._s{background-color:#fffde8}._bc tr:nth-child(even) td._s{background-color:#def2fc}._bc tr:nth-child(odd) td._d{background-color:#fcf8e3}._bc tr:nth-child(even) td._d{background-color:#d9edf7}._bd{font-family:monospace;background-color:#fff}._be{font-family:monospace;white-space:nowrap;color:#f39}._bf{t |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import japgolly.scalajs.react._ | |
import japgolly.scalajs.react.extra._ | |
import japgolly.scalajs.react.vdom.html_<^._ | |
object NotReusable { | |
final case class Props(name: String, update: Callback) | |
final class Backend($: BackendScope[Props, Unit]) { | |
def render(p: Props): VdomElement = |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
sealed trait Field { | |
type Value | |
def fold[F[_]](f: Field.Fold[F]): F[Value] | |
} | |
object Field { | |
case object Name extends Field { | |
override type Value = String | |
override def fold[F[_]](f: Field.Fold[F]): F[Value] = f.name(this) | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
npm config set prefix ~/.npm | |
npm install -g jsdom source-map-support yarn | |
export NODE_PATH="$(npm config get prefix)"/lib/node_modules | |
export PATH="$PATH:$(npm config get prefix)/bin" |