@@ -143,10 +143,76 @@ public class CSharpToCppTransformer : Transformer
143143 ( new Regex ( @"(\W)string(\W)" ) , "$1const char*$2" , null , 0 ) ,
144144 // sbyte
145145 // std::int8_t
146- ( new Regex ( @"(\W)sbyte(\W)" ) , "$1std::int8_t$2" , null , 0 ) ,
146+ ( new Regex ( @"(?<before>\W)((System\.)?SB|sb)yte(?!\s*=)(?<after>\W)" ) , "${before}std::int8_t${after}" , null , 0 ) ,
147+ // sbyte.MinValue
148+ // INT8_MIN
149+ ( new Regex ( @"(?<before>\W)std::int8_t\.MinValue(?<after>\W)" ) , "${before}INT8_MIN${after}" , null , 0 ) ,
150+ // sbyte.MaxValue
151+ // INT8_MAX
152+ ( new Regex ( @"(?<before>\W)std::int8_t\.MaxValue(?<after>\W)" ) , "${before}INT8_MAX${after}" , null , 0 ) ,
153+ // short
154+ // std::int16_t
155+ ( new Regex ( @"(?<before>\W)((System\.)?Int16|short)(?!\s*=)(?<after>\W)" ) , "${before}std::int16_t${after}" , null , 0 ) ,
156+ // short.MinValue
157+ // INT16_MIN
158+ ( new Regex ( @"(?<before>\W)std::int16_t\.MinValue(?<after>\W)" ) , "${before}INT16_MIN${after}" , null , 0 ) ,
159+ // short.MaxValue
160+ // INT16_MAX
161+ ( new Regex ( @"(?<before>\W)std::int16_t\.MaxValue(?<after>\W)" ) , "${before}INT16_MAX${after}" , null , 0 ) ,
162+ // int
163+ // std::int32_t
164+ ( new Regex ( @"(?<before>\W)((System\.)?I|i)nt(32)?(?!\s*=)(?<after>\W)" ) , "${before}std::int32_t${after}" , null , 0 ) ,
165+ // int.MinValue
166+ // INT32_MIN
167+ ( new Regex ( @"(?<before>\W)std::int32_t\.MinValue(?<after>\W)" ) , "${before}INT32_MIN${after}" , null , 0 ) ,
168+ // int.MaxValue
169+ // INT32_MAX
170+ ( new Regex ( @"(?<before>\W)std::int32_t\.MaxValue(?<after>\W)" ) , "${before}INT32_MAX${after}" , null , 0 ) ,
171+ // long
172+ // std::int64_t
173+ ( new Regex ( @"(?<before>\W)((System\.)?Int64|long)(?!\s*=)(?<after>\W)" ) , "${before}std::int64_t${after}" , null , 0 ) ,
174+ // long.MinValue
175+ // INT64_MIN
176+ ( new Regex ( @"(?<before>\W)std::int64_t\.MinValue(?<after>\W)" ) , "${before}INT64_MIN${after}" , null , 0 ) ,
177+ // long.MaxValue
178+ // INT64_MAX
179+ ( new Regex ( @"(?<before>\W)std::int64_t\.MaxValue(?<after>\W)" ) , "${before}INT64_MAX${after}" , null , 0 ) ,
180+ // byte
181+ // std::uint8_t
182+ ( new Regex ( @"(?<before>\W)((System\.)?Byte|byte)(?!\s*=)(?<after>\W)" ) , "${before}std::uint8_t${after}" , null , 0 ) ,
183+ // byte.MinValue
184+ // (std::uint8_t)0
185+ ( new Regex ( @"(?<before>\W)std::uint8_t\.MinValue(?<after>\W)" ) , "${before}(std::uint8_t)0${after}" , null , 0 ) ,
186+ // byte.MaxValue
187+ // UINT8_MAX
188+ ( new Regex ( @"(?<before>\W)std::uint8_t\.MaxValue(?<after>\W)" ) , "${before}UINT8_MAX${after}" , null , 0 ) ,
189+ // ushort
190+ // std::uint16_t
191+ ( new Regex ( @"(?<before>\W)((System\.)?UInt16|ushort)(?!\s*=)(?<after>\W)" ) , "${before}std::uint16_t${after}" , null , 0 ) ,
192+ // ushort.MinValue
193+ // (std::uint16_t)0
194+ ( new Regex ( @"(?<before>\W)std::uint16_t\.MinValue(?<after>\W)" ) , "${before}(std::uint16_t)0${after}" , null , 0 ) ,
195+ // ushort.MaxValue
196+ // UINT16_MAX
197+ ( new Regex ( @"(?<before>\W)std::uint16_t\.MaxValue(?<after>\W)" ) , "${before}UINT16_MAX${after}" , null , 0 ) ,
147198 // uint
148199 // std::uint32_t
149- ( new Regex ( @"(\W)uint(\W)" ) , "$1std::uint32_t$2" , null , 0 ) ,
200+ ( new Regex ( @"(?<before>\W)((System\.)?UI|ui)nt(32)?(?!\s*=)(?<after>\W)" ) , "${before}std::uint32_t${after}" , null , 0 ) ,
201+ // uint.MinValue
202+ // (std::uint32_t)0
203+ ( new Regex ( @"(?<before>\W)std::uint32_t\.MinValue(?<after>\W)" ) , "${before}(std::uint32_t)0${after}" , null , 0 ) ,
204+ // uint.MaxValue
205+ // UINT32_MAX
206+ ( new Regex ( @"(?<before>\W)std::uint32_t\.MaxValue(?<after>\W)" ) , "${before}UINT32_MAX${after}" , null , 0 ) ,
207+ // ulong
208+ // std::uint64_t
209+ ( new Regex ( @"(?<before>\W)((System\.)?UInt64|ulong)(?!\s*=)(?<after>\W)" ) , "${before}std::uint64_t${after}" , null , 0 ) ,
210+ // ulong.MinValue
211+ // (std::uint64_t)0
212+ ( new Regex ( @"(?<before>\W)std::uint64_t\.MinValue(?<after>\W)" ) , "${before}(std::uint64_t)0${after}" , null , 0 ) ,
213+ // ulong.MaxValue
214+ // UINT64_MAX
215+ ( new Regex ( @"(?<before>\W)std::uint64_t\.MaxValue(?<after>\W)" ) , "${before}UINT64_MAX${after}" , null , 0 ) ,
150216 // char*[] args
151217 // char* args[]
152218 ( new Regex ( @"([_a-zA-Z0-9:\*]?)\[\] ([a-zA-Z0-9]+)" ) , "$1 $2[]" , null , 0 ) ,
0 commit comments