Skip to content

Commit 4159ccd

Browse files
committed
SIMPLIFIED TOO MUCH!!!
1 parent cfe6b8c commit 4159ccd

File tree

3 files changed

+10
-34
lines changed

3 files changed

+10
-34
lines changed

scala/RDF.scala

Lines changed: 6 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -12,31 +12,21 @@ trait RDF:
1212

1313
type R = rdf.type
1414

15-
type rNode <: Matchable
16-
type rURI <: rNode
17-
type Node <: rNode
18-
type URI <: Node & rURI
15+
type Node <: Matchable
16+
type URI <: Node
1917

2018
given rops: ROps[R]
21-
2219
end RDF
2320

2421
object RDF:
25-
type rNode[R <: RDF] <: Matchable = R match
26-
case GetRelNode[n] => n & Matchable
27-
28-
type rURI[R <: RDF] <: rNode[R] = R match
29-
case GetRelURI[n] => n & rNode[R]
30-
31-
type Node[R <: RDF] <: rNode[R] = R match
32-
case GetNode[n] => n & rNode[R]
22+
23+
type Node[R <: RDF] = R match
24+
case GetNode[n] => n
3325

3426
type URI[R <: RDF] <: Node[R] = R match
35-
case GetURI[u] => u & Node[R] & rURI[R]
27+
case GetURI[u] => u & Node[R]
3628

37-
private type GetRelNode[N <: Matchable] = RDF { type rNode = N }
3829
private type GetNode[N] = RDF { type Node = N }
39-
private type GetRelURI[U] = RDF { type rURI = U }
4030
private type GetURI[U] = RDF { type URI = U }
4131

4232
end RDF

scala/RDF_Class.scala

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,35 +10,23 @@ object ClassTypes {
1010
def value: String
1111

1212
abstract class Uri extends Node
13-
abstract class BNode extends Node
14-
abstract class Lit extends Node
1513

1614
trait IFactory:
17-
def mkBNode(): BNode
1815
def mkUri(u: String): Uri
19-
def mkLit(u: String): Lit
2016

2117
def getFactory: IFactory = AFactory
2218

2319
private object AFactory extends IFactory:
24-
var bnode: Int = 0
25-
def mkBNode(): BNode =
26-
bnode = bnode + 1
27-
new BNode { def value = bnode.toString }
2820
def mkUri(u: String): Uri =
2921
new Uri { def value = u }
30-
def mkLit(u: String): Lit =
31-
new Lit { def value = u }
3222
}
3323

3424
object ClassRDF extends generic.RDF:
3525
import class_based.ClassTypes as cz
3626
import generic.*
3727

38-
override opaque type rNode <: Matchable = cz.Node
39-
override opaque type rURI <: rNode = cz.Uri
40-
override opaque type Node <: rNode = cz.Node
41-
override opaque type URI <: Node & rURI = cz.Uri
28+
override opaque type Node <: Matchable = cz.Node
29+
override opaque type URI <: Node = cz.Uri
4230

4331
given rops: generic.ROps[R] with
4432
override def mkUri(str: String): Try[RDF.URI[R]] = Try(

scala/RDF_UsingScalaTrait.scala

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,8 @@ import generic.*
88
// todo, put back example using traits only to see if Java is the problem
99
object TraitBasedRDF extends RDF:
1010
lazy val factory: rdfscala.ScalaMkNodes = rdfscala.SimpleScalaNodeFactory
11-
override opaque type rNode <: Matchable = rdfscala.TstNode
12-
override opaque type rURI <: rNode = rdfscala.URI
13-
override opaque type Node <: rNode = rdfscala.TstNode
14-
override opaque type URI <: Node & rURI = rdfscala.URI
11+
override opaque type Node <: Matchable = rdfscala.TstNode
12+
override opaque type URI <: Node = rdfscala.URI
1513

1614
given rops: ROps[R] with
1715
override def mkUri(str: String): Try[RDF.URI[R]] = Try(

0 commit comments

Comments
 (0)