Skip to content

Commit 9fd88b1

Browse files
Moved SmiXetterAccessMap to shared src folder (#1310)
1 parent 6c1d000 commit 9fd88b1

File tree

5 files changed

+112
-164
lines changed

5 files changed

+112
-164
lines changed

src/Microsoft.Data.SqlClient/netcore/src/Microsoft.Data.SqlClient.csproj

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,9 @@
163163
<Compile Include="..\..\src\Microsoft\Data\SqlClient\Server\SqlDataRecord.netcore.cs">
164164
<Link>Microsoft\Data\SqlClient\Server\SqlDataRecord.netcore.cs</Link>
165165
</Compile>
166+
<Compile Include="..\..\src\Microsoft\Data\SqlClient\Server\SmiXetterAccessMap.Common.cs">
167+
<Link>Microsoft\Data\SqlClient\Server\SmiXetterAccessMap.Common.cs</Link>
168+
</Compile>
166169
<Compile Include="..\..\src\Microsoft\Data\SqlClient\Server\SmiMetaDataProperty.cs">
167170
<Link>Microsoft\Data\SqlClient\Server\SmiMetaDataProperty.cs</Link>
168171
</Compile>
@@ -521,7 +524,6 @@
521524
</EmbeddedResource>
522525
<Compile Include="Microsoft\Data\SqlClient\AAsyncCallContext.cs" />
523526
<Compile Include="Microsoft\Data\SqlClient\Server\MetadataUtilsSmi.cs" />
524-
<Compile Include="Microsoft\Data\SqlClient\Server\SmiXetterAccessMap.cs" />
525527
<Compile Include="Microsoft\Data\SqlClient\SqlDbColumn.cs" />
526528
<Compile Include="Microsoft\Data\Common\DbConnectionOptions.cs" />
527529
<Compile Include="$(CommonPath)\Microsoft\Data\ProviderBase\DbConnectionInternal.cs">

src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/Server/SmiXetterAccessMap.cs

Lines changed: 0 additions & 105 deletions
This file was deleted.

src/Microsoft.Data.SqlClient/netfx/src/Microsoft.Data.SqlClient.csproj

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -204,6 +204,9 @@
204204
<Compile Include="..\..\src\Microsoft\Data\SqlClient\Server\SmiXetterTypeCode.cs">
205205
<Link>Microsoft\Data\SqlClient\Server\SmiXetterTypeCode.cs</Link>
206206
</Compile>
207+
<Compile Include="..\..\src\Microsoft\Data\SqlClient\Server\SmiXetterAccessMap.Common.cs">
208+
<Link>Microsoft\Data\SqlClient\Server\SmiXetterAccess.Common.cs</Link>
209+
</Compile>
207210
<Compile Include="..\..\src\Microsoft\Data\SqlClient\Server\SqlFacetAttribute.cs">
208211
<Link>Microsoft\Data\SqlClient\Server\SqlFacetAttribute.cs</Link>
209212
</Compile>
@@ -619,7 +622,6 @@
619622
<Compile Include="Microsoft\Data\SqlClient\Server\SmiLink.cs" />
620623
<Compile Include="Microsoft\Data\SqlClient\Server\SmiRequestExecutor.cs" />
621624
<Compile Include="Microsoft\Data\SqlClient\Server\SmiStream.cs" />
622-
<Compile Include="Microsoft\Data\SqlClient\Server\SmiXetterAccessMap.cs" />
623625
<Compile Include="Microsoft\Data\SqlClient\Server\sqlser.cs" />
624626
<Compile Include="Microsoft\Data\Sql\SqlGenericUtil.cs" />
625627
</ItemGroup>

src/Microsoft.Data.SqlClient/netfx/src/Microsoft/Data/SqlClient/Server/SmiXetterAccessMap.cs

Lines changed: 1 addition & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,9 @@ namespace Microsoft.Data.SqlClient.Server
88
{
99

1010
// Formal encoding of SMI's metadata-to-ITypedSetter/-from-ITypedGetter validity rules
11-
internal class SmiXetterAccessMap
11+
internal partial class SmiXetterAccessMap
1212
{
1313

14-
// A couple of private constants to make the getter/setter access tables more readable
15-
private const bool X = true;
16-
private const bool _ = false;
17-
1814
private static bool[,] __isGetterAccessValid = {
1915
// Getters as columns (abbreviated from XetterTypeCode names)
2016
// SqlDbTypes as rows
@@ -56,64 +52,12 @@ internal class SmiXetterAccessMap
5652
/*DTOffset*/{ _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , X , },
5753
};
5854

59-
private static bool[,] __isSetterAccessValid = {
60-
// Setters as columns (abreviated from XetterTypeCode names)
61-
// SqlDbTypes as rows
62-
// Current difference between setters and getters is that character setters do
63-
// not need to support SetBytes
64-
// bool, byte, bytes, chars, strng, int16, int32, int64, singl, doubl, sqldec, date, guid, varmd, Xetr, time, dtost
65-
/*BigInt*/ { _ , _ , _ , _ , _ , _ , _ , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
66-
/*Binary*/ { _ , _ , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
67-
/*Bit*/ { X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
68-
/*Char*/ { _ , _ , _ , X , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
69-
/*DTime*/ { _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , X , _ , _ , _ , _ , _ , },
70-
/*Decimal*/ { _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , X , _ , _ , _ , _ , _ , _ , },
71-
/*Float*/ { _ , _ , _ , _ , _ , _ , _ , _ , _ , X , _ , _ , _ , _ , _ , _ , _ , },
72-
/*Image*/ { _ , _ , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
73-
/*Int*/ { _ , _ , _ , _ , _ , _ , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
74-
/*Money*/ { _ , _ , _ , _ , _ , _ , _ , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
75-
/*NChar*/ { _ , _ , _ , X , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
76-
/*NText*/ { _ , _ , _ , X , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
77-
/*NVarChar*/{ _ , _ , _ , X , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
78-
/*Real*/ { _ , _ , _ , _ , _ , _ , _ , _ , X , _ , _ , _ , _ , _ , _ , _ , _ , },
79-
/*UniqueId*/{ _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , X , _ , _ , _ , _ , },
80-
/*SmDTime*/ { _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , X , _ , _ , _ , _ , _ , },
81-
/*SmInt*/ { _ , _ , _ , _ , _ , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
82-
/*SmMoney*/ { _ , _ , _ , _ , _ , _ , _ , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
83-
/*Text*/ { _ , _ , _ , X , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
84-
/*Tstamp*/ { _ , _ , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
85-
/*TinyInt*/ { _ , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
86-
/*VarBin*/ { _ , _ , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
87-
/*VarChar*/ { _ , _ , _ , X , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
88-
/*Variant*/ { X , X , X , X , X , X , X , X , X , X , X , X , X , X , _ , X , X , },
89-
/* 24 */ { _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
90-
/*Xml*/ { _ , _ , X , _ , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
91-
/* 26 */ { _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
92-
/* 27 */ { _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
93-
/* 28 */ { _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
94-
/*Udt*/ { _ , _ , X , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , },
95-
/*Struct*/ { _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , X , _ , _ , },
96-
/*Date*/ { _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , X , _ , _ , _ , _ , _ , },
97-
/*Time*/ { _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , X , _ , },
98-
/*DTime2*/ { _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , X , _ , _ , _ , _ , _ , },
99-
/*DTOffset*/{ _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , _ , X , },
100-
};
101-
10255
internal static bool IsGetterAccessValid(SmiMetaData metaData, SmiXetterTypeCode xetterType)
10356
{
10457
// Make sure no-one adds a new xetter type without updating this file!
10558
Debug.Assert(SmiXetterTypeCode.XetBoolean <= xetterType && SmiXetterTypeCode.XetDateTimeOffset >= xetterType);
10659

10760
return __isGetterAccessValid[(int)metaData.SqlDbType, (int)xetterType];
10861
}
109-
110-
internal static bool IsSetterAccessValid(SmiMetaData metaData, SmiXetterTypeCode xetterType)
111-
{
112-
// Make sure no-one adds a new xetter type without updating this file!
113-
Debug.Assert(SmiXetterTypeCode.XetBoolean <= xetterType && SmiXetterTypeCode.XetDateTimeOffset >= xetterType &&
114-
SmiXetterTypeCode.GetVariantMetaData != xetterType);
115-
116-
return __isSetterAccessValid[(int)metaData.SqlDbType, (int)xetterType];
117-
}
11862
}
11963
}

0 commit comments

Comments
 (0)