blob: 17385b45fc70a02e35827534983132b55a3d53c9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
package reading.models
import enumeratum._
sealed trait Program extends EnumEntry with Ordered[Program] {
import Program._
def compare(that: Program): Int = {
values.indexOf(that) - values.indexOf(this)
}
def prettyPrint(): String = this match {
case Monstre => "Le monstre, aux limites de l'humain"
case RecitAventure => "Récits d'aventures"
case CreationPoetique => "Récit de création, création poétique"
case Resister => "Résister au plus fort : ruses, mensonges et masques"
case VoyageEtAventure => "Le voyage et l'aventure"
case Autrui => "Avec autrui : familles, amis, réseaux"
case UniversNouveaux => "Imaginer des univers nouveaux"
case Heros => "Héros, héroïnes et héroïsmes"
case HommeEtNature => "L'être humain est-il maître de la nature ?"
case DireAmour => "Dire l'amour"
case IndividuEtSociete => "Individu et société : confrontations de valeur ?"
case FictionEtReel => "La fiction pour interroger le réel"
case Informer => "Informer, s'informer, déformer ?"
case Ville => "La ville, lieu de tous les possibles ?"
case RaconterRepresenter => "Se raconter, se représenter"
case TraversSociete => "Dénoncer les travers de la société"
case VisionsPoetiques => "Visions poétiques du monde"
case AgirCite => "Agir dans la cité : individu et pouvoir"
case ProgresReveScientifique => "Progrès et rêves scientifiques"
}
}
object Program extends Enum[Program] {
val values = findValues
case object Monstre extends Program
case object RecitAventure extends Program
case object CreationPoetique extends Program
case object Resister extends Program
case object VoyageEtAventure extends Program
case object Autrui extends Program
case object UniversNouveaux extends Program
case object Heros extends Program
case object HommeEtNature extends Program
case object DireAmour extends Program
case object IndividuEtSociete extends Program
case object FictionEtReel extends Program
case object Informer extends Program
case object Ville extends Program
case object RaconterRepresenter extends Program
case object TraversSociete extends Program
case object VisionsPoetiques extends Program
case object AgirCite extends Program
case object ProgresReveScientifique extends Program
def grade(program: Program): Grade = {
import Grade._
program match {
case Monstre | RecitAventure | CreationPoetique | Resister => Sixieme
case VoyageEtAventure | Autrui | UniversNouveaux | Heros | HommeEtNature => Cinquieme
case DireAmour | IndividuEtSociete | FictionEtReel | Informer | Ville => Quatrieme
case RaconterRepresenter | TraversSociete | VisionsPoetiques | AgirCite | ProgresReveScientifique => Troisieme
}
}
}
|