summaryrefslogtreecommitdiff
path: root/src/lib/sounds/sounds.mli
diff options
context:
space:
mode:
authorSébastien Dailly <sebastien@chimrod.com>2021-09-03 15:15:00 +0200
committerSébastien Dailly <sebastien@chimrod.com>2021-09-03 15:15:00 +0200
commit48dc04c3b9afe19207d15b873452129d9c2b3b4c (patch)
tree2c46df86808aa738a28ce95d5b62a58ffaf12459 /src/lib/sounds/sounds.mli
parentad45e1b397ba995dc0222057a8dc1d0c38970c4f (diff)
Continued refactoring
Diffstat (limited to 'src/lib/sounds/sounds.mli')
-rw-r--r--src/lib/sounds/sounds.mli70
1 files changed, 70 insertions, 0 deletions
diff --git a/src/lib/sounds/sounds.mli b/src/lib/sounds/sounds.mli
new file mode 100644
index 0000000..acb3335
--- /dev/null
+++ b/src/lib/sounds/sounds.mli
@@ -0,0 +1,70 @@
+module Sig = Sig
+
+type t
+val muted : t -> t
+
+val a : t
+val e : [`Closed | `Opened] -> t
+val eu : t
+
+val o : t
+val schwa : unit -> t
+
+(** This is an empty sound.
+
+ It can be used to replace any element in a syllabus *)
+val none: t
+
+(** This is the voyel i like in "ici"
+ When nazalized, the voyel become [in] like in "ainsi" *)
+val i : t
+
+(** This is the sound present with letter [ai].
+ It is the e like in "semaine".
+
+ When nazalized, the voyel become [in]
+
+
+*)
+val voyel_ai : t
+
+(** This is the sound ou like in "ouvrier"
+ When nazalized, the voyel does not change *)
+val voyel_u : t
+
+(** This is the sound u like in "unis"
+ When nazalized, the voyel become [un] like in "brun" *)
+val voyel_y : t
+
+(** Create a diphtongue from a semi-voyel and a voyel *)
+val diphtongue: t -> t -> t
+
+val nasal: t -> t option
+
+val p: t
+val b: t
+val t: t
+val d: t
+val k: t
+val g: t
+val f: t
+val v: t
+val s: t
+val z: t
+val sz: t
+val ch: t
+val j: t
+
+val n: t
+val m: t
+
+val r: t
+val l: t
+
+val semi_voyel_w: t
+val semi_voyel_y: t
+
+val is_voyel : t -> bool
+val is_nasal : t -> bool
+
+val repr : t -> string