Skip to content

Instantly share code, notes, and snippets.

interface Article{
fun applyTo(consumer: ArticleConsumer)
}
class ItaArticle(val itaData1: String, val itaData2: Int) : Article {
override fun applyTo(consumer: ArticleConsumer) {
consumer.use(this)
}
}
sealed trait Article
case class ItaArticle(id: Int, itaData1: String, itaData2: Int) extends Article
case class DeuArticle(id: Int, deuData1: Int, deuData2: Int) extends Article
case class EspArticle(id: Int, espData1: Float, espData2: String) extends Article
case class ArticleNotFound() extends Article
def doSomething(article: Article) : Unit = {
article match {
case ita: ItaArticle => print(ita.itaData1)
case deu: DeuArticle => print(deu.deuData2)
case spa: SpaArticle => print(spa.spaData3)
case nf: ArticleNotFound => print("None")
}
}
def doSomething(article: Article) : Unit = {
article match {
case ita: ItaArticle => print(ita.itaData1)
case deu: DeuArticle => print(deu.deuData2)
}
}
def doSomething(article: Article) : Unit = {
article match {
case ita: ItaArticle => print(ita.itaData1)
case deu: DeuArticle => print(deu.deuData2)
case nf: ArticleNotFound => print("None")
}
}
sealed trait Article
case class ItaArticle(id: Int, itaData1: String, itaData2: Int) extends Article
case class DeuArticle(id: Int, deuData1: Int, deuData2: Int) extends Article
case class ArticleNotFound() extends Article
{
"openapi": "3.0.0",
"info": {
"title": "POS API",
"version": "1"
},
"servers": [
{
"url": "http://api/drug/{version}",
"variables": {
#%RAML 1.0
title: g3 Point of sale API
version: v1
baseUri: api/{version}
types:
ResourceCreated:
type: object
description: The kind of information returned when a new resource is created
properties:
<plugin>
<groupId>org.raml.jaxrs</groupId>
<artifactId>raml-to-jaxrs-maven-plugin</artifactId>
<version>3.0.4</version>
<dependencies>
<dependency>
<groupId>org.raml.jaxrs</groupId>
<artifactId>jaxrs-code-generator</artifactId>
<version>3.0.4</version>
</dependency>
@lucapiccinelli
lucapiccinelli / AsAPlayer_IWantToKnow_MyScore.cs
Last active January 20, 2019 13:28
Bowling game: test case 2
...
[Theory]
[InlineData("1-1,1-1,1-1,1-1,1-1,1-1,1-1,1-1,1-1,1-1", "2,2,2,2,2,2,2,2,2,2", "20")] // All open frames
[InlineData("10,10,10,10,10,10,10,10,10,10-10-10", "30,30,30,30,30,30,30,30,30,30", "300")] // All strikes
...