From 14de0ee99e7f81a41a8bca80c3c6af29e84c3062 Mon Sep 17 00:00:00 2001 From: Adrien Hopkins Date: Tue, 5 Sep 2023 13:14:37 -0500 Subject: Alter backing values of enum types The backing constants of NumberType and TotativeType have been changed so that they can be compared (based on how desirable they are, more desirable categories are given higher values), and so that I can add new values in between without changing the constants. --- factors/digit_map.go | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'factors/digit_map.go') diff --git a/factors/digit_map.go b/factors/digit_map.go index db562db..83606e9 100644 --- a/factors/digit_map.go +++ b/factors/digit_map.go @@ -7,28 +7,28 @@ type DigitType struct { totativeType TotativeType } -type TotativeType uint8 +type TotativeType byte const ( // This number does not have any totative factors - Regular TotativeType = iota + Regular TotativeType = 0xC0 // This number's totative part is divisible by (r - 1) // - this gives it the simplest possible decimal expansion // for a non-regular (1 digit repeating) and a simple divisibility // test (sum digits, like 3 or 9 in decimal) - Omega + Omega TotativeType = 0xA0 // This number's totative part is divisible by (r + 1) // - this makes it slightly more complicated than omega - Alpha + Alpha TotativeType = 0x80 // This number's totative part is divisible by (r^2 - 1) // but not (r + 1) or (r - 1) // - these totatives straddle the line between simple and complex - Pseudoneighbour + Pseudoneighbour TotativeType = 0x60 // This number's totative part is not divisible by (r^2 - 1) // - it will not be nice to work with - Opaque + Opaque TotativeType = 0x40 // This number is zero, and doesn't have a true totative type. - Zero + Zero TotativeType = 0x00 ) // Zero and one will always have these types. -- cgit v1.2.3