Skip to content

Commit 7d5811c

Browse files
committed
Remove span support for now
1 parent 97ea1a6 commit 7d5811c

File tree

74 files changed

+228
-312
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+228
-312
lines changed

Src/FastData.Generator.CPlusPlus/CPlusPlusCodeGenerator.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,13 @@ public static CPlusPlusCodeGenerator Create(CPlusPlusCodeGeneratorConfig userCfg
2323
return new CPlusPlusCodeGenerator(userCfg, langDef, new CPlusPlusConstantsDef(), new CPlusPlusEarlyExitDef(map, userCfg.GeneratorOptions), new CPlusPlusHashDef(), map);
2424
}
2525

26-
public override string Generate<T>(ReadOnlySpan<T> data, GeneratorConfig<T> genCfg, IContext<T> context)
26+
public override string Generate<T>(GeneratorConfig<T> genCfg, IContext<T> context)
2727
{
2828
//C++ generator does not support chars outside ASCII
2929
if (genCfg.DataType == DataType.Char && (char)(object)genCfg.Constants.MaxValue > 127)
3030
throw new InvalidOperationException("C++ generator does not support chars outside ASCII. Please use a different data type or reduce the max value to 127 or lower.");
3131

32-
return base.Generate(data, genCfg, context);
32+
return base.Generate(genCfg, context);
3333
}
3434

3535
protected override void AppendHeader<T>(StringBuilder sb, GeneratorConfig<T> genCfg, IContext<T> context)

Src/FastData.Generator.CPlusPlus/Internal/Generators/ArrayCode.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ namespace Genbox.FastData.Generator.CPlusPlus.Internal.Generators;
66

77
internal sealed class ArrayCode<T>(ArrayContext<T> ctx) : CPlusPlusOutputWriter<T>
88
{
9-
public override string Generate(ReadOnlySpan<T> data) =>
9+
public override string Generate() =>
1010
$$"""
11-
{{FieldModifier}}std::array<{{TypeName}}, {{data.Length.ToStringInvariant()}}> entries = {
12-
{{FormatColumns(data, ToValueLabel)}}
11+
{{FieldModifier}}std::array<{{TypeName}}, {{ctx.Data.Length.ToStringInvariant()}}> entries = {
12+
{{FormatColumns(ctx.Data, ToValueLabel)}}
1313
};
1414
1515
public:
@@ -18,7 +18,7 @@ public override string Generate(ReadOnlySpan<T> data) =>
1818
{
1919
{{EarlyExits}}
2020
21-
for ({{ArraySizeType}} i = 0; i < {{data.Length.ToStringInvariant()}}; i++)
21+
for ({{ArraySizeType}} i = 0; i < {{ctx.Data.Length.ToStringInvariant()}}; i++)
2222
{
2323
if ({{GetEqualFunction("entries[i]", "value")}})
2424
return true;

Src/FastData.Generator.CPlusPlus/Internal/Generators/BinarySearchCode.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ namespace Genbox.FastData.Generator.CPlusPlus.Internal.Generators;
66

77
internal sealed class BinarySearchCode<T>(BinarySearchContext<T> ctx) : CPlusPlusOutputWriter<T>
88
{
9-
public override string Generate(ReadOnlySpan<T> data) =>
9+
public override string Generate() =>
1010
$$"""
11-
{{FieldModifier}}std::array<{{TypeName}}, {{data.Length.ToStringInvariant()}}> entries = {
12-
{{FormatColumns(data, ToValueLabel)}}
11+
{{FieldModifier}}std::array<{{TypeName}}, {{ctx.Data.Length.ToStringInvariant()}}> entries = {
12+
{{FormatColumns(ctx.Data, ToValueLabel)}}
1313
};
1414
1515
public:
@@ -19,7 +19,7 @@ public override string Generate(ReadOnlySpan<T> data) =>
1919
{{EarlyExits}}
2020
2121
{{ArraySizeType}} lo = 0;
22-
{{ArraySizeType}} hi = {{(data.Length - 1).ToStringInvariant()}};
22+
{{ArraySizeType}} hi = {{(ctx.Data.Length - 1).ToStringInvariant()}};
2323
while (lo <= hi)
2424
{
2525
const size_t mid = lo + ((hi - lo) >> 1);

Src/FastData.Generator.CPlusPlus/Internal/Generators/ConditionalCode.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@ namespace Genbox.FastData.Generator.CPlusPlus.Internal.Generators;
55

66
internal sealed class ConditionalCode<T>(ConditionalContext<T> ctx) : CPlusPlusOutputWriter<T>
77
{
8-
public override string Generate(ReadOnlySpan<T> data) =>
8+
public override string Generate() =>
99
$$"""
1010
public:
1111
{{MethodAttribute}}
1212
{{MethodModifier}}bool contains(const {{TypeName}} value){{PostMethodModifier}}
1313
{
1414
{{EarlyExits}}
1515
16-
if ({{FormatList(data, x => GetEqualFunction("value", ToValueLabel(x)), " || ")}})
16+
if ({{FormatList(ctx.Data, x => GetEqualFunction("value", ToValueLabel(x)), " || ")}})
1717
return true;
1818
1919
return false;

Src/FastData.Generator.CPlusPlus/Internal/Generators/EytzingerSearchCode.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ namespace Genbox.FastData.Generator.CPlusPlus.Internal.Generators;
66

77
internal sealed class EytzingerSearchCode<T>(EytzingerSearchContext<T> ctx) : CPlusPlusOutputWriter<T>
88
{
9-
public override string Generate(ReadOnlySpan<T> data) =>
9+
public override string Generate() =>
1010
$$"""
11-
{{FieldModifier}}std::array<{{TypeName}}, {{data.Length.ToStringInvariant()}}> entries = {
12-
{{FormatColumns(data, ToValueLabel)}}
11+
{{FieldModifier}}std::array<{{TypeName}}, {{ctx.Data.Length.ToStringInvariant()}}> entries = {
12+
{{FormatColumns(ctx.Data, ToValueLabel)}}
1313
};
1414
1515
public:

Src/FastData.Generator.CPlusPlus/Internal/Generators/HashSetChainCode.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ namespace Genbox.FastData.Generator.CPlusPlus.Internal.Generators;
66

77
internal sealed class HashSetChainCode<T>(HashSetChainContext<T> ctx) : CPlusPlusOutputWriter<T>
88
{
9-
public override string Generate(ReadOnlySpan<T> data) =>
9+
public override string Generate() =>
1010
$$"""
1111
struct e
1212
{

Src/FastData.Generator.CPlusPlus/Internal/Generators/HashSetLinearCode.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ namespace Genbox.FastData.Generator.CPlusPlus.Internal.Generators;
66

77
internal sealed class HashSetLinearCode<T>(HashSetLinearContext<T> ctx) : CPlusPlusOutputWriter<T>
88
{
9-
public override string Generate(ReadOnlySpan<T> data) =>
9+
public override string Generate() =>
1010
$$"""
1111
struct b
1212
{

Src/FastData.Generator.CPlusPlus/Internal/Generators/HashSetPerfectCode.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ namespace Genbox.FastData.Generator.CPlusPlus.Internal.Generators;
66

77
internal sealed class HashSetPerfectCode<T>(HashSetPerfectContext<T> ctx) : CPlusPlusOutputWriter<T>
88
{
9-
public override string Generate(ReadOnlySpan<T> data) => ctx.StoreHashCode
9+
public override string Generate() => ctx.StoreHashCode
1010
? $$"""
1111
struct e
1212
{

Src/FastData.Generator.CPlusPlus/Internal/Generators/KeyLengthCode.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ namespace Genbox.FastData.Generator.CPlusPlus.Internal.Generators;
66

77
internal sealed class KeyLengthCode<T>(KeyLengthContext<T> ctx) : CPlusPlusOutputWriter<T>
88
{
9-
public override string Generate(ReadOnlySpan<T> data) => ctx.LengthsAreUniq ? GenerateUniq() : GenerateNormal();
9+
public override string Generate() => ctx.LengthsAreUniq ? GenerateUniq() : GenerateNormal();
1010

1111
private string GenerateUniq()
1212
{

Src/FastData.Generator.CPlusPlus/Internal/Generators/SingleValueCode.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ namespace Genbox.FastData.Generator.CPlusPlus.Internal.Generators;
55

66
internal sealed class SingleValueCode<T>(SingleValueContext<T> ctx) : CPlusPlusOutputWriter<T>
77
{
8-
public override string Generate(ReadOnlySpan<T> data) =>
8+
public override string Generate() =>
99
$$"""
1010
public:
1111
{{MethodAttribute}}

0 commit comments

Comments
 (0)