summaryrefslogtreecommitdiff
path: root/src/System.Private.CoreLib/System.Private.CoreLib.csproj
diff options
context:
space:
mode:
authorLevi Broderick <GrabYourPitchforks@users.noreply.github.com>2019-03-18 22:58:32 -0700
committerGitHub <noreply@github.com>2019-03-18 22:58:32 -0700
commit1f3f474a13bdde1c5fecdf8cd9ce525dbe5df000 (patch)
tree6dfa953c84f1b4d1a7af414c89bb69a025902b1b /src/System.Private.CoreLib/System.Private.CoreLib.csproj
parent31581af5fa816fb2ea94145823ec3bdd6c0b0327 (diff)
downloadcoreclr-1f3f474a13bdde1c5fecdf8cd9ce525dbe5df000.tar.gz
coreclr-1f3f474a13bdde1c5fecdf8cd9ce525dbe5df000.tar.bz2
coreclr-1f3f474a13bdde1c5fecdf8cd9ce525dbe5df000.zip
Add Utf8String skeleton (#23209)
Utf8String is an experimental type that is string-like (heap-allocated, immutable, variable-length, null-terminated) but whose inner representation is UTF-8, not UTF-16. This is a skeleton implementation of the basic API shape. The ecosystem of APIs has not yet been built around it. All Utf8String-related code is currently surrounded by ifdefs to allow easy identification and removal from release branches.
Diffstat (limited to 'src/System.Private.CoreLib/System.Private.CoreLib.csproj')
-rw-r--r--src/System.Private.CoreLib/System.Private.CoreLib.csproj12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/System.Private.CoreLib/System.Private.CoreLib.csproj b/src/System.Private.CoreLib/System.Private.CoreLib.csproj
index 6e73aeffa5..0cf6733ad9 100644
--- a/src/System.Private.CoreLib/System.Private.CoreLib.csproj
+++ b/src/System.Private.CoreLib/System.Private.CoreLib.csproj
@@ -112,6 +112,10 @@
<!-- CLR Features -->
<Import Project="$(MSBuildThisFileDirectory)..\..\clr.coreclr.props" />
<Import Project="$(MSBuildThisFileDirectory)..\..\clr.defines.targets" />
+ <!-- Experimental features -->
+ <PropertyGroup Condition="'$(FeatureUtf8String)' == 'true'">
+ <DefineConstants>$(DefineConstants);FEATURE_UTF8STRING</DefineConstants>
+ </PropertyGroup>
<!-- Sources -->
<ItemGroup>
<Compile Include="$(BclSourcesRoot)\Internal\Console.cs" />
@@ -274,6 +278,14 @@
<Compile Include="shared\Interop\Windows\Ole32\Interop.CoTaskMemAlloc.cs" />
<Compile Include="shared\Interop\Windows\OleAut32\Interop.SysAllocStringByteLen.cs" />
</ItemGroup>
+ <ItemGroup Condition="'$(FeatureUtf8String)' == 'true'">
+ <Compile Include="$(BclSourcesRoot)\System\Char8.cs" />
+ <Compile Include="$(BclSourcesRoot)\System\Utf8Extensions.cs" />
+ <Compile Include="$(BclSourcesRoot)\System\Utf8String.cs" />
+ <Compile Include="$(BclSourcesRoot)\System\Utf8String.Construction.cs" />
+ <Compile Include="$(BclSourcesRoot)\System\Utf8String.Manipulation.cs" />
+ <Compile Include="$(BclSourcesRoot)\System\Utf8String.Searching.cs" />
+ </ItemGroup>
<ItemGroup>
<Compile Include="$(BclSourcesRoot)\System\Diagnostics\Eventing\XplatEventLogger.cs" Condition="'$(FeatureXplatEventSource)' == 'true'" />
<Compile Include="$(IntermediateOutputPath)..\Eventing\NativeRuntimeEventSource.cs" Condition="'$(FeaturePerfTracing)' == 'true'"/>