// Auto-generated by unicode-build. Do not edit by hand.
// Regenerate via:
// make ucd-generate
//
// Source: LineBreak.txt. `LineBreak` is a closed union;
// every UAX #14 LB property value gets one primitive.
// XX (Unknown) is the default for unassigned codepoints.
primitive LBXX
fun code(): String val => "XX"
fun string(): String val => "XX"
primitive LBAI
fun code(): String val => "AI"
fun string(): String val => "AI"
primitive LBAK
fun code(): String val => "AK"
fun string(): String val => "AK"
primitive LBAL
fun code(): String val => "AL"
fun string(): String val => "AL"
primitive LBAP
fun code(): String val => "AP"
fun string(): String val => "AP"
primitive LBAS
fun code(): String val => "AS"
fun string(): String val => "AS"
primitive LBB2
fun code(): String val => "B2"
fun string(): String val => "B2"
primitive LBBA
fun code(): String val => "BA"
fun string(): String val => "BA"
primitive LBBB
fun code(): String val => "BB"
fun string(): String val => "BB"
primitive LBBK
fun code(): String val => "BK"
fun string(): String val => "BK"
primitive LBCB
fun code(): String val => "CB"
fun string(): String val => "CB"
primitive LBCJ
fun code(): String val => "CJ"
fun string(): String val => "CJ"
primitive LBCL
fun code(): String val => "CL"
fun string(): String val => "CL"
primitive LBCM
fun code(): String val => "CM"
fun string(): String val => "CM"
primitive LBCP
fun code(): String val => "CP"
fun string(): String val => "CP"
primitive LBCR
fun code(): String val => "CR"
fun string(): String val => "CR"
primitive LBEB
fun code(): String val => "EB"
fun string(): String val => "EB"
primitive LBEM
fun code(): String val => "EM"
fun string(): String val => "EM"
primitive LBEX
fun code(): String val => "EX"
fun string(): String val => "EX"
primitive LBGL
fun code(): String val => "GL"
fun string(): String val => "GL"
primitive LBH2
fun code(): String val => "H2"
fun string(): String val => "H2"
primitive LBH3
fun code(): String val => "H3"
fun string(): String val => "H3"
primitive LBHL
fun code(): String val => "HL"
fun string(): String val => "HL"
primitive LBHY
fun code(): String val => "HY"
fun string(): String val => "HY"
primitive LBID
fun code(): String val => "ID"
fun string(): String val => "ID"
primitive LBIN
fun code(): String val => "IN"
fun string(): String val => "IN"
primitive LBIS
fun code(): String val => "IS"
fun string(): String val => "IS"
primitive LBJL
fun code(): String val => "JL"
fun string(): String val => "JL"
primitive LBJT
fun code(): String val => "JT"
fun string(): String val => "JT"
primitive LBJV
fun code(): String val => "JV"
fun string(): String val => "JV"
primitive LBLF
fun code(): String val => "LF"
fun string(): String val => "LF"
primitive LBNL
fun code(): String val => "NL"
fun string(): String val => "NL"
primitive LBNS
fun code(): String val => "NS"
fun string(): String val => "NS"
primitive LBNU
fun code(): String val => "NU"
fun string(): String val => "NU"
primitive LBOP
fun code(): String val => "OP"
fun string(): String val => "OP"
primitive LBPO
fun code(): String val => "PO"
fun string(): String val => "PO"
primitive LBPR
fun code(): String val => "PR"
fun string(): String val => "PR"
primitive LBQU
fun code(): String val => "QU"
fun string(): String val => "QU"
primitive LBRI
fun code(): String val => "RI"
fun string(): String val => "RI"
primitive LBSA
fun code(): String val => "SA"
fun string(): String val => "SA"
primitive LBSG
fun code(): String val => "SG"
fun string(): String val => "SG"
primitive LBSP
fun code(): String val => "SP"
fun string(): String val => "SP"
primitive LBSY
fun code(): String val => "SY"
fun string(): String val => "SY"
primitive LBVF
fun code(): String val => "VF"
fun string(): String val => "VF"
primitive LBVI
fun code(): String val => "VI"
fun string(): String val => "VI"
primitive LBWJ
fun code(): String val => "WJ"
fun string(): String val => "WJ"
primitive LBZW
fun code(): String val => "ZW"
fun string(): String val => "ZW"
primitive LBZWJ
fun code(): String val => "ZWJ"
fun string(): String val => "ZWJ"
type LineBreak is
( LBXX
| LBAI
| LBAK
| LBAL
| LBAP
| LBAS
| LBB2
| LBBA
| LBBB
| LBBK
| LBCB
| LBCJ
| LBCL
| LBCM
| LBCP
| LBCR
| LBEB
| LBEM
| LBEX
| LBGL
| LBH2
| LBH3
| LBHL
| LBHY
| LBID
| LBIN
| LBIS
| LBJL
| LBJT
| LBJV
| LBLF
| LBNL
| LBNS
| LBNU
| LBOP
| LBPO
| LBPR
| LBQU
| LBRI
| LBSA
| LBSG
| LBSP
| LBSY
| LBVF
| LBVI
| LBWJ
| LBZW
| LBZWJ
)
primitive LineBreaks
fun from_iso(s: String box): (LineBreak | None) =>
match s
| "XX" => LBXX
| "AI" => LBAI
| "AK" => LBAK
| "AL" => LBAL
| "AP" => LBAP
| "AS" => LBAS
| "B2" => LBB2
| "BA" => LBBA
| "BB" => LBBB
| "BK" => LBBK
| "CB" => LBCB
| "CJ" => LBCJ
| "CL" => LBCL
| "CM" => LBCM
| "CP" => LBCP
| "CR" => LBCR
| "EB" => LBEB
| "EM" => LBEM
| "EX" => LBEX
| "GL" => LBGL
| "H2" => LBH2
| "H3" => LBH3
| "HL" => LBHL
| "HY" => LBHY
| "ID" => LBID
| "IN" => LBIN
| "IS" => LBIS
| "JL" => LBJL
| "JT" => LBJT
| "JV" => LBJV
| "LF" => LBLF
| "NL" => LBNL
| "NS" => LBNS
| "NU" => LBNU
| "OP" => LBOP
| "PO" => LBPO
| "PR" => LBPR
| "QU" => LBQU
| "RI" => LBRI
| "SA" => LBSA
| "SG" => LBSG
| "SP" => LBSP
| "SY" => LBSY
| "VF" => LBVF
| "VI" => LBVI
| "WJ" => LBWJ
| "ZW" => LBZW
| "ZWJ" => LBZWJ
else None
end
fun _to_byte(lb: LineBreak): U8 =>
match lb
| LBXX => 0
| LBAI => 1
| LBAK => 2
| LBAL => 3
| LBAP => 4
| LBAS => 5
| LBB2 => 6
| LBBA => 7
| LBBB => 8
| LBBK => 9
| LBCB => 10
| LBCJ => 11
| LBCL => 12
| LBCM => 13
| LBCP => 14
| LBCR => 15
| LBEB => 16
| LBEM => 17
| LBEX => 18
| LBGL => 19
| LBH2 => 20
| LBH3 => 21
| LBHL => 22
| LBHY => 23
| LBID => 24
| LBIN => 25
| LBIS => 26
| LBJL => 27
| LBJT => 28
| LBJV => 29
| LBLF => 30
| LBNL => 31
| LBNS => 32
| LBNU => 33
| LBOP => 34
| LBPO => 35
| LBPR => 36
| LBQU => 37
| LBRI => 38
| LBSA => 39
| LBSG => 40
| LBSP => 41
| LBSY => 42
| LBVF => 43
| LBVI => 44
| LBWJ => 45
| LBZW => 46
| LBZWJ => 47
end
fun _from_byte(b: U8): LineBreak =>
match b
| 0 => LBXX
| 1 => LBAI
| 2 => LBAK
| 3 => LBAL
| 4 => LBAP
| 5 => LBAS
| 6 => LBB2
| 7 => LBBA
| 8 => LBBB
| 9 => LBBK
| 10 => LBCB
| 11 => LBCJ
| 12 => LBCL
| 13 => LBCM
| 14 => LBCP
| 15 => LBCR
| 16 => LBEB
| 17 => LBEM
| 18 => LBEX
| 19 => LBGL
| 20 => LBH2
| 21 => LBH3
| 22 => LBHL
| 23 => LBHY
| 24 => LBID
| 25 => LBIN
| 26 => LBIS
| 27 => LBJL
| 28 => LBJT
| 29 => LBJV
| 30 => LBLF
| 31 => LBNL
| 32 => LBNS
| 33 => LBNU
| 34 => LBOP
| 35 => LBPO
| 36 => LBPR
| 37 => LBQU
| 38 => LBRI
| 39 => LBSA
| 40 => LBSG
| 41 => LBSP
| 42 => LBSY
| 43 => LBVF
| 44 => LBVI
| 45 => LBWJ
| 46 => LBZW
| 47 => LBZWJ
else LBXX
end