| author | wenzelm |
| Fri, 22 Dec 2017 18:32:59 +0100 | |
| changeset 67263 | 449a989f42cd |
| parent 66415 | 96ad7d5ff613 |
| child 71601 | 97ccf48c2f0c |
| permissions | -rw-r--r-- |
|
52530
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
1 |
/* Title: Pure/PIDE/document_id.scala |
|
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
2 |
Author: Makarius |
|
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
3 |
|
|
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
4 |
Unique identifiers for document structure. |
|
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
5 |
|
|
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
6 |
NB: ML ticks forwards > 0, JVM ticks backwards < 0. |
|
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
7 |
*/ |
|
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
8 |
|
|
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
9 |
package isabelle |
|
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
10 |
|
|
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
11 |
|
|
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
12 |
object Document_ID |
|
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
13 |
{
|
| 52531 | 14 |
type Generic = Long |
15 |
type Version = Generic |
|
16 |
type Command = Generic |
|
17 |
type Exec = Generic |
|
|
52530
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
18 |
|
| 52531 | 19 |
val none: Generic = 0 |
| 52537 | 20 |
val make = Counter.make() |
|
52530
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
21 |
|
| 63805 | 22 |
def apply(id: Generic): String = Value.Long.apply(id) |
23 |
def unapply(s: String): Option[Generic] = Value.Long.unapply(s) |
|
|
52530
99dd8b4ef3fe
explicit module Document_ID as source of globally unique identifiers across ML/Scala;
wenzelm
parents:
diff
changeset
|
24 |
} |