1 // =================================
 2 // Copyright (c) 2024 Seppo Laakko
 3 // Distributed under the MIT license
 4 // =================================
 5 
 6 using System.Ascii;
 7 
 8 namespace System
 9 {
10     public inline bool IsLower(char c)
11     {
12         return (CharClassTable.Instance().GetCharacterClass(c) & CharClass.lower) != 0;
13     }
14 
15     public inline bool IsUpper(char c)
16     {
17         return (CharClassTable.Instance().GetCharacterClass(c) & CharClass.upper) != 0;
18     }
19 
20     public inline bool IsAlpha(char c)
21     {
22         return (CharClassTable.Instance().GetCharacterClass(c) & CharClass.alpha) != 0;
23     }
24 
25     public inline bool IsDigit(char c)
26     {
27         return (CharClassTable.Instance().GetCharacterClass(c) & CharClass.digit) != 0;
28     }
29 
30     public inline bool IsAlphanumeric(char c)
31     {
32         return (CharClassTable.Instance().GetCharacterClass(c) & CharClass.alnum) != 0;
33     }
34 
35     public inline bool IsHexDigit(char c)
36     {
37         return (CharClassTable.Instance().GetCharacterClass(c) & CharClass.xdigit) != 0;
38     }
39 
40     public inline bool IsControl(char c)
41     {
42         return (CharClassTable.Instance().GetCharacterClass(c) & CharClass.cntrl) != 0;
43     }
44 
45     public inline bool IsGraphic(char c)
46     {
47         return (CharClassTable.Instance().GetCharacterClass(c) & CharClass.graph) != 0;
48     }
49 
50     public inline bool IsPrintable(char c)
51     {
52         return (CharClassTable.Instance().GetCharacterClass(c) & CharClass.print) != 0;
53     }
54 
55     public inline bool IsPunctuation(char c)
56     {
57         return (CharClassTable.Instance().GetCharacterClass(c) & CharClass.punct) != 0;
58     }
59 
60     public inline bool IsSpace(char c)
61     {
62         return (CharClassTable.Instance().GetCharacterClass(c) & CharClass.space) != 0;
63     }
64 
65     public char AsciiToUpper(char c)
66     {
67         return RtmAsciiToUpper(c);
68     }
69 
70     public char AsciiToLower(char c)
71     {
72         return RtmAsciiToLower(c);
73     }