Skip to content

Commit 5b87205

Browse files
committed
Version 0.2.4. Using two universal rules for translation of limits of primitive types.
1 parent dd610ce commit 5b87205

File tree

2 files changed

+8
-50
lines changed

2 files changed

+8
-50
lines changed

csharp/Platform.RegularExpressions.Transformer.CSharpToCpp/CSharpToCppTransformer.cs

Lines changed: 6 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -156,81 +156,39 @@ public class CSharpToCppTransformer : TextTransformer
156156
// sbyte
157157
// std::int8_t
158158
(new Regex(@"(?<before>\W)((System\.)?SB|sb)yte(?!\s*=)(?<after>\W)"), "${before}std::int8_t${after}", 0),
159-
// sbyte.MinValue
160-
// INT8_MIN
161-
(new Regex(@"(?<before>\W)std::int8_t\.MinValue(?<after>\W)"), "${before}INT8_MIN${after}", 0),
162-
// sbyte.MaxValue
163-
// INT8_MAX
164-
(new Regex(@"(?<before>\W)std::int8_t\.MaxValue(?<after>\W)"), "${before}INT8_MAX${after}", 0),
165159
// short
166160
// std::int16_t
167161
(new Regex(@"(?<before>\W)((System\.)?Int16|short)(?!\s*=)(?<after>\W)"), "${before}std::int16_t${after}", 0),
168-
// short.MinValue
169-
// INT16_MIN
170-
(new Regex(@"(?<before>\W)std::int16_t\.MinValue(?<after>\W)"), "${before}INT16_MIN${after}", 0),
171-
// short.MaxValue
172-
// INT16_MAX
173-
(new Regex(@"(?<before>\W)std::int16_t\.MaxValue(?<after>\W)"), "${before}INT16_MAX${after}", 0),
174162
// int
175163
// std::int32_t
176164
(new Regex(@"(?<before>\W)((System\.)?I|i)nt(32)?(?!\s*=)(?<after>\W)"), "${before}std::int32_t${after}", 0),
177-
// int.MinValue
178-
// INT32_MIN
179-
(new Regex(@"(?<before>\W)std::int32_t\.MinValue(?<after>\W)"), "${before}INT32_MIN${after}", 0),
180-
// int.MaxValue
181-
// INT32_MAX
182-
(new Regex(@"(?<before>\W)std::int32_t\.MaxValue(?<after>\W)"), "${before}INT32_MAX${after}", 0),
183165
// long
184166
// std::int64_t
185167
(new Regex(@"(?<before>\W)((System\.)?Int64|long)(?!\s*=)(?<after>\W)"), "${before}std::int64_t${after}", 0),
186-
// long.MinValue
187-
// INT64_MIN
188-
(new Regex(@"(?<before>\W)std::int64_t\.MinValue(?<after>\W)"), "${before}INT64_MIN${after}", 0),
189-
// long.MaxValue
190-
// INT64_MAX
191-
(new Regex(@"(?<before>\W)std::int64_t\.MaxValue(?<after>\W)"), "${before}INT64_MAX${after}", 0),
192168
// byte
193169
// std::uint8_t
194170
(new Regex(@"(?<before>\W)((System\.)?Byte|byte)(?!\s*=)(?<after>\W)"), "${before}std::uint8_t${after}", 0),
195-
// byte.MinValue
196-
// (std::uint8_t)0
197-
(new Regex(@"(?<before>\W)std::uint8_t\.MinValue(?<after>\W)"), "${before}(std::uint8_t)0${after}", 0),
198-
// byte.MaxValue
199-
// UINT8_MAX
200-
(new Regex(@"(?<before>\W)std::uint8_t\.MaxValue(?<after>\W)"), "${before}UINT8_MAX${after}", 0),
201171
// ushort
202172
// std::uint16_t
203173
(new Regex(@"(?<before>\W)((System\.)?UInt16|ushort)(?!\s*=)(?<after>\W)"), "${before}std::uint16_t${after}", 0),
204-
// ushort.MinValue
205-
// (std::uint16_t)0
206-
(new Regex(@"(?<before>\W)std::uint16_t\.MinValue(?<after>\W)"), "${before}(std::uint16_t)0${after}", 0),
207-
// ushort.MaxValue
208-
// UINT16_MAX
209-
(new Regex(@"(?<before>\W)std::uint16_t\.MaxValue(?<after>\W)"), "${before}UINT16_MAX${after}", 0),
210174
// uint
211175
// std::uint32_t
212176
(new Regex(@"(?<before>\W)((System\.)?UI|ui)nt(32)?(?!\s*=)(?<after>\W)"), "${before}std::uint32_t${after}", 0),
213-
// uint.MinValue
214-
// (std::uint32_t)0
215-
(new Regex(@"(?<before>\W)std::uint32_t\.MinValue(?<after>\W)"), "${before}(std::uint32_t)0${after}", 0),
216-
// uint.MaxValue
217-
// UINT32_MAX
218-
(new Regex(@"(?<before>\W)std::uint32_t\.MaxValue(?<after>\W)"), "${before}UINT32_MAX${after}", 0),
219177
// ulong
220178
// std::uint64_t
221179
(new Regex(@"(?<before>\W)((System\.)?UInt64|ulong)(?!\s*=)(?<after>\W)"), "${before}std::uint64_t${after}", 0),
222-
// ulong.MinValue
223-
// (std::uint64_t)0
224-
(new Regex(@"(?<before>\W)std::uint64_t\.MinValue(?<after>\W)"), "${before}(std::uint64_t)0${after}", 0),
225-
// ulong.MaxValue
226-
// UINT64_MAX
227-
(new Regex(@"(?<before>\W)std::uint64_t\.MaxValue(?<after>\W)"), "${before}UINT64_MAX${after}", 0),
228180
// char*[] args
229181
// char* args[]
230182
(new Regex(@"([_a-zA-Z0-9:\*]?)\[\] ([a-zA-Z0-9]+)"), "$1 $2[]", 0),
231183
// @object
232184
// object
233185
(new Regex(@"@([_a-zA-Z0-9]+)"), "$1", 0),
186+
// float.MinValue
187+
// std::numeric_limits<float>::min()
188+
(new Regex(@"(?<before>\W)(?<type>std::[a-z0-9_]+|float|double)\.MinValue(?<after>\W)"), "${before}std::numeric_limits<${type}>::min()${after}", 0),
189+
// double.MaxValue
190+
// std::numeric_limits<float>::max()
191+
(new Regex(@"(?<before>\W)(?<type>std::[a-z0-9_]+|float|double)\.MaxValue(?<after>\W)"), "${before}std::numeric_limits<${type}>::max()${after}", 0),
234192
// using Platform.Numbers;
235193
//
236194
(new Regex(@"([\r\n]{2}|^)\s*?using [\.a-zA-Z0-9]+;\s*?$"), "", 0),

csharp/Platform.RegularExpressions.Transformer.CSharpToCpp/Platform.RegularExpressions.Transformer.CSharpToCpp.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<Description>LinksPlatform's Platform.RegularExpressions.Transformer.CSharpToCpp Class Library</Description>
55
<Copyright>Konstantin Diachenko</Copyright>
66
<AssemblyTitle>Platform.RegularExpressions.Transformer.CSharpToCpp</AssemblyTitle>
7-
<VersionPrefix>0.2.3</VersionPrefix>
7+
<VersionPrefix>0.2.4</VersionPrefix>
88
<Authors>Konstantin Diachenko</Authors>
99
<TargetFrameworks>net472;netstandard2.0;netstandard2.1</TargetFrameworks>
1010
<AssemblyName>Platform.RegularExpressions.Transformer.CSharpToCpp</AssemblyName>
@@ -24,7 +24,7 @@
2424
<IncludeSymbols>true</IncludeSymbols>
2525
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
2626
<LangVersion>latest</LangVersion>
27-
<PackageReleaseNotes>Platform.RegularExpressions.Transformer dependency updated from 0.2.1 to 0.2.2.</PackageReleaseNotes>
27+
<PackageReleaseNotes>Using two universal rules for translation of limits of primitive types.</PackageReleaseNotes>
2828
</PropertyGroup>
2929

3030
<ItemGroup Condition="$(TargetFramework.StartsWith('net4')) AND '$(MSBuildRuntimeType)' == 'Core' AND '$(OS)' != 'Windows_NT'">

0 commit comments

Comments
 (0)