Created
August 31, 2016 13:35
-
-
Save davegurnell/83015a255cc3af4074a4425beab5bc46 to your computer and use it in GitHub Desktop.
This file contains hidden or 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
| sbt.version=0.13.13-M1 |
This file contains hidden or 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
| scalaOrganization in ThisBuild := "org.typelevel" | |
| scalaVersion in ThisBuild := "2.11.8" | |
| libraryDependencies ++= Seq("com.chuusai" %% "shapeless" % "2.3.2") |
This file contains hidden or 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
| Welcome to Scala 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_45). | |
| Type in expressions for evaluation. Or try :help. | |
| scala> import shapeless.syntax.singleton._ | |
| import shapeless.syntax.singleton._ | |
| scala> | |
| scala> var x = 42.narrow | |
| java.lang.AssertionError: assertion failed: (16,13) | |
| at scala.Predef$.assert(Predef.scala:186) | |
| at scala.reflect.internal.Symbols$Symbol.updateInfo(Symbols.scala:1570) | |
| at scala.tools.nsc.transform.SpecializeTypes$$anonfun$23$$anonfun$apply$21.apply(SpecializeTypes.scala:793) | |
| at scala.tools.nsc.transform.SpecializeTypes$$anonfun$23$$anonfun$apply$21.apply(SpecializeTypes.scala:783) | |
| at scala.collection.immutable.List.flatMap(List.scala:327) | |
| at scala.tools.nsc.transform.SpecializeTypes$$anonfun$23.apply(SpecializeTypes.scala:783) | |
| at scala.tools.nsc.transform.SpecializeTypes$$anonfun$23.apply(SpecializeTypes.scala:781) | |
| at scala.collection.immutable.List.flatMap(List.scala:327) | |
| at scala.tools.nsc.transform.SpecializeTypes.specializeClass(SpecializeTypes.scala:781) | |
| at scala.tools.nsc.transform.SpecializeTypes.transformInfo(SpecializeTypes.scala:1196) | |
| at scala.tools.nsc.transform.InfoTransform$Phase$$anon$1.transform(InfoTransform.scala:38) | |
| at scala.reflect.internal.Symbols$Symbol.rawInfo(Symbols.scala:1614) | |
| at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1534) | |
| at scala.reflect.internal.Symbols$Symbol.isDerivedValueClass(Symbols.scala:813) | |
| at scala.reflect.internal.Symbols$Symbol.isMethodWithExtension(Symbols.scala:816) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.preEraseNormalApply(Erasure.scala:991) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.preEraseApply(Erasure.scala:1098) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.preErase(Erasure.scala:1108) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:1192) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:873) | |
| at scala.reflect.internal.Trees$class.itransform(Trees.scala:1386) | |
| at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:16) | |
| at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:16) | |
| at scala.reflect.api.Trees$Transformer.transform(Trees.scala:2555) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:44) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:1213) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:873) | |
| at scala.reflect.api.Trees$Transformer$$anonfun$transformStats$1.apply(Trees.scala:2589) | |
| at scala.reflect.api.Trees$Transformer$$anonfun$transformStats$1.apply(Trees.scala:2587) | |
| at scala.collection.immutable.List.loop$1(List.scala:173) | |
| at scala.collection.immutable.List.mapConserve(List.scala:189) | |
| at scala.reflect.api.Trees$Transformer.transformStats(Trees.scala:2587) | |
| at scala.reflect.internal.Trees$class.itransform(Trees.scala:1366) | |
| at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:16) | |
| at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:16) | |
| at scala.reflect.api.Trees$Transformer.transform(Trees.scala:2555) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:44) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:1213) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:873) | |
| at scala.reflect.internal.Trees$$anonfun$itransform$2.apply(Trees.scala:1363) | |
| at scala.reflect.internal.Trees$$anonfun$itransform$2.apply(Trees.scala:1361) | |
| at scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2600) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:30) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:25) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:17) | |
| at scala.reflect.internal.Trees$class.itransform(Trees.scala:1360) | |
| at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:16) | |
| at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:16) | |
| at scala.reflect.api.Trees$Transformer.transform(Trees.scala:2555) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:44) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:1210) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:873) | |
| at scala.reflect.api.Trees$Transformer$$anonfun$transformStats$1.apply(Trees.scala:2589) | |
| at scala.reflect.api.Trees$Transformer$$anonfun$transformStats$1.apply(Trees.scala:2587) | |
| at scala.collection.immutable.List.loop$1(List.scala:173) | |
| at scala.collection.immutable.List.mapConserve(List.scala:189) | |
| at scala.reflect.api.Trees$Transformer.transformStats(Trees.scala:2587) | |
| at scala.reflect.internal.Trees$class.itransform(Trees.scala:1404) | |
| at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:16) | |
| at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:16) | |
| at scala.reflect.api.Trees$Transformer.transform(Trees.scala:2555) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.scala$tools$nsc$transform$TypingTransformers$TypingTransformer$$super$transform(TypingTransformers.scala:40) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer$$anonfun$transform$1.apply(TypingTransformers.scala:40) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer$$anonfun$transform$1.apply(TypingTransformers.scala:40) | |
| at scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2600) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:30) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:25) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:40) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:1213) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:873) | |
| at scala.reflect.api.Trees$Transformer.transformTemplate(Trees.scala:2563) | |
| at scala.reflect.internal.Trees$$anonfun$itransform$4.apply(Trees.scala:1408) | |
| at scala.reflect.internal.Trees$$anonfun$itransform$4.apply(Trees.scala:1407) | |
| at scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2600) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:30) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:25) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:17) | |
| at scala.reflect.internal.Trees$class.itransform(Trees.scala:1406) | |
| at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:16) | |
| at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:16) | |
| at scala.reflect.api.Trees$Transformer.transform(Trees.scala:2555) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:44) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:1213) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:873) | |
| at scala.reflect.api.Trees$Transformer$$anonfun$transformStats$1.apply(Trees.scala:2589) | |
| at scala.reflect.api.Trees$Transformer$$anonfun$transformStats$1.apply(Trees.scala:2587) | |
| at scala.collection.immutable.List.loop$1(List.scala:173) | |
| at scala.collection.immutable.List.mapConserve(List.scala:189) | |
| at scala.reflect.api.Trees$Transformer.transformStats(Trees.scala:2587) | |
| at scala.reflect.internal.Trees$$anonfun$itransform$7.apply(Trees.scala:1426) | |
| at scala.reflect.internal.Trees$$anonfun$itransform$7.apply(Trees.scala:1426) | |
| at scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2600) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:30) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:25) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:17) | |
| at scala.reflect.internal.Trees$class.itransform(Trees.scala:1425) | |
| at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:16) | |
| at scala.reflect.internal.SymbolTable.itransform(SymbolTable.scala:16) | |
| at scala.reflect.api.Trees$Transformer.transform(Trees.scala:2555) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.scala$tools$nsc$transform$TypingTransformers$TypingTransformer$$super$transform(TypingTransformers.scala:40) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer$$anonfun$transform$2.apply(TypingTransformers.scala:42) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer$$anonfun$transform$2.apply(TypingTransformers.scala:42) | |
| at scala.reflect.api.Trees$Transformer.atOwner(Trees.scala:2600) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:30) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.atOwner(TypingTransformers.scala:25) | |
| at scala.tools.nsc.transform.TypingTransformers$TypingTransformer.transform(TypingTransformers.scala:42) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer$$anon$1.transform(Erasure.scala:1213) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer.transform(Erasure.scala:1223) | |
| at scala.tools.nsc.transform.Erasure$ErasureTransformer.transform(Erasure.scala:746) | |
| at scala.tools.nsc.ast.Trees$Transformer.transformUnit(Trees.scala:147) | |
| at scala.tools.nsc.transform.Transform$Phase.apply(Transform.scala:30) | |
| at scala.tools.nsc.Global$GlobalPhase$$anonfun$applyPhase$1.apply$mcV$sp(Global.scala:453) | |
| at scala.tools.nsc.Global$GlobalPhase.withCurrentUnit(Global.scala:444) | |
| at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:453) | |
| at scala.tools.nsc.Global$GlobalPhase$$anonfun$run$1.apply(Global.scala:411) | |
| at scala.tools.nsc.Global$GlobalPhase$$anonfun$run$1.apply(Global.scala:411) | |
| at scala.collection.Iterator$class.foreach(Iterator.scala:893) | |
| at scala.collection.AbstractIterator.foreach(Iterator.scala:1336) | |
| at scala.tools.nsc.Global$GlobalPhase.run(Global.scala:411) | |
| at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1514) | |
| at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1499) | |
| at scala.tools.nsc.Global$Run.compileSources(Global.scala:1494) | |
| at scala.tools.nsc.interpreter.IMain.compileSourcesKeepingRun(IMain.scala:435) | |
| at scala.tools.nsc.interpreter.IMain$ReadEvalPrint.compileAndSaveRun(IMain.scala:855) | |
| at scala.tools.nsc.interpreter.IMain$ReadEvalPrint.compile(IMain.scala:813) | |
| at scala.tools.nsc.interpreter.IMain$Request$$anonfun$compile$1.apply$mcZ$sp(IMain.scala:1019) | |
| at scala.tools.nsc.interpreter.IMain$Request$$anonfun$compile$1.apply(IMain.scala:1019) | |
| at scala.tools.nsc.interpreter.IMain$Request$$anonfun$compile$1.apply(IMain.scala:1019) | |
| at scala.tools.nsc.interpreter.IMain$$anonfun$withoutWarnings$1.apply(IMain.scala:108) | |
| at scala.tools.nsc.interpreter.IMain.beQuietDuring(IMain.scala:214) | |
| at scala.tools.nsc.interpreter.IMain.withoutWarnings(IMain.scala:103) | |
| at scala.tools.nsc.interpreter.IMain$Request.compile$lzycompute(IMain.scala:1019) | |
| at scala.tools.nsc.interpreter.IMain$Request.compile(IMain.scala:997) | |
| at scala.tools.nsc.interpreter.IMain.compile(IMain.scala:579) | |
| at scala.tools.nsc.interpreter.IMain.interpret(IMain.scala:567) | |
| at scala.tools.nsc.interpreter.IMain.interpret(IMain.scala:565) | |
| at scala.tools.nsc.interpreter.ILoop.interpretStartingWith(ILoop.scala:807) | |
| at scala.tools.nsc.interpreter.ILoop.command(ILoop.scala:681) | |
| at scala.tools.nsc.interpreter.ILoop.processLine(ILoop.scala:395) | |
| at scala.tools.nsc.interpreter.ILoop.loop(ILoop.scala:415) | |
| at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply$mcZ$sp(ILoop.scala:923) | |
| at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply(ILoop.scala:909) | |
| at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply(ILoop.scala:909) | |
| at scala.reflect.internal.util.ScalaClassLoader$.savingContextLoader(ScalaClassLoader.scala:97) | |
| at scala.tools.nsc.interpreter.ILoop.process(ILoop.scala:909) | |
| at scala.tools.nsc.interpreter.ILoop.main(ILoop.scala:934) | |
| at xsbt.ConsoleInterface.run(ConsoleInterface.scala:62) | |
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) | |
| at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) | |
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) | |
| at java.lang.reflect.Method.invoke(Method.java:497) | |
| at sbt.compiler.AnalyzingCompiler.call(AnalyzingCompiler.scala:101) | |
| at sbt.compiler.AnalyzingCompiler.console(AnalyzingCompiler.scala:76) | |
| at sbt.Console.sbt$Console$$console0$1(Console.scala:22) | |
| at sbt.Console$$anonfun$apply$2$$anonfun$apply$1.apply$mcV$sp(Console.scala:23) | |
| at sbt.Console$$anonfun$apply$2$$anonfun$apply$1.apply(Console.scala:23) | |
| at sbt.Console$$anonfun$apply$2$$anonfun$apply$1.apply(Console.scala:23) | |
| at sbt.Logger$$anon$4.apply(Logger.scala:84) | |
| at sbt.TrapExit$App.run(TrapExit.scala:248) | |
| at java.lang.Thread.run(Thread.java:745) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment