-
Notifications
You must be signed in to change notification settings - Fork 473
Create [AttachedBindableProperty<T>]
#3024
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 68 commits
Commits
Show all changes
69 commits
Select commit
Hold shift + click to select a range
d31579f
Rename BindablePropertyAttributeSourceGeneratorTests
TheCodeTraveler 5f56016
Add BindablePropertyDiagnostic, Update XML Comments
TheCodeTraveler 788aa96
Remove unused usings
TheCodeTraveler f4f7a5f
Replace setter with `init`
TheCodeTraveler 6219643
Update formatting
TheCodeTraveler f1664ca
Finish Class Attribute Tests
TheCodeTraveler f033ac5
Finish ConstructorAttribute Tests
TheCodeTraveler 97c7f30
Fix typos
TheCodeTraveler 2c61ade
Create AttachedBindablePropertySourceGenerator
TheCodeTraveler 63e2e07
Get AttachedBindableProperty Tests Working
TheCodeTraveler b502007
Fix Failing Unit Tests
TheCodeTraveler 16bcb0e
Fix Find + Replace error
TheCodeTraveler feb80fc
Merge branch 'Add-`-AttachedBindableProperty]`' of https://github.com…
TheCodeTraveler 975efd0
Fix Failing Unit Tests
TheCodeTraveler e90321d
Fix Failing Unit Tests
TheCodeTraveler 1ee55d6
Add support for nullable reference types
TheCodeTraveler 7b6047a
Add support for Nullable Types
TheCodeTraveler 86842e0
Update GenerateAttachedBindableProperty_SimpleExample_GeneratesCorrec…
TheCodeTraveler ae0bcef
Finish Unit Tests
TheCodeTraveler 3f522c5
Add CommunityToolkit.Maui.Accessibility
TheCodeTraveler 39ae6a5
Refactor Base Tests
TheCodeTraveler 058e3a3
Add `[MethodImpl(MethodImplOptions.AggressiveInlining)]`
TheCodeTraveler 870ff27
Update StateContainer.shared.cs
TheCodeTraveler dbb1e71
Add BindablePropertyAccessibility
TheCodeTraveler 463a57f
Add Support for XML Documentation
TheCodeTraveler cdf0285
Add Custom XML Documentation Test
TheCodeTraveler db84401
Update StateContainer.shared.cs
TheCodeTraveler 83f752a
Fix XML Documenation
TheCodeTraveler 515506f
Fix Paramref
TheCodeTraveler 7aadaea
Merge branch 'Add-`-AttachedBindableProperty]`' of https://github.com…
TheCodeTraveler 0257d9c
Add Benchmarks
TheCodeTraveler dd219c9
Merge branch 'Add-`-AttachedBindableProperty]`' of https://github.com…
TheCodeTraveler 2d539a9
Add Benchmarks
TheCodeTraveler 4cf48be
Update StateContainer Unit Tests
TheCodeTraveler 8ee700c
Rename enum
TheCodeTraveler 3c691f1
Fix Ctrl+F Errors
TheCodeTraveler 782d3f3
Fix Unit Tests
TheCodeTraveler dae7b53
Move XML Unit Test to IntegrationTests
TheCodeTraveler 3143863
Add Missing Properties to `GenerateAttachedBindableProperty_WithAllPa…
TheCodeTraveler 02a9d0e
Fix Copy/Paste error
TheCodeTraveler 5366304
Fix Failing Unit Tests
TheCodeTraveler b471044
Convert `isNullable` constructor parameter to `IsNullable` Property
TheCodeTraveler cefd5ae
Use `string?` for and `null` for method name
TheCodeTraveler fbce984
Add XML Comments
TheCodeTraveler 579f8df
Use `global::` for default bindable property
TheCodeTraveler f9f175f
Update AttachedBindablePropertyAttributeSourceGenerator.cs
TheCodeTraveler c12df83
Fix XML Comments
TheCodeTraveler c5c5ae0
Add Defaults + Unit Tests
TheCodeTraveler 7366a81
Merge branch 'main' into Add-`-AttachedBindableProperty]`
TheCodeTraveler aa40c67
Disable `EmitCompilerGeneratedFiles`
TheCodeTraveler e0255e5
Merge branch 'main' into Add-`-AttachedBindableProperty]`
TheCodeTraveler 56987cd
Delete CommunityToolkit.Maui.SourceGenerators.Internal.UnitTests.sln
TheCodeTraveler 5ff8feb
Merge branch 'Add-`-AttachedBindableProperty]`' of https://github.com…
TheCodeTraveler 64613a1
Remove AI Slop
TheCodeTraveler c7429d2
Use `AttachedBindableProperty` for test names
TheCodeTraveler b2418e6
Create `EquatableArray`
TheCodeTraveler 5ea2c10
Remove unnecessary namespace
TheCodeTraveler 3b65e03
Add Effective Xml Documentation properties
TheCodeTraveler 6164437
Update Records.cs
TheCodeTraveler 5c441b3
Revert "Remove unnecessary namespace"
TheCodeTraveler c4d966f
Merge branch 'main' into Add-`-AttachedBindableProperty]`
TheCodeTraveler 3ab5972
Fix Merge Conflicts
TheCodeTraveler e8a4246
Fix Merge Conflicts
TheCodeTraveler 8294bf8
Add Support for `BindableProperty.CreateAttached()`
TheCodeTraveler e80b1ed
Merge branch 'main' into Add-`-AttachedBindableProperty]`
TheCodeTraveler 714d086
Add XML Comments for AccessModifier
TheCodeTraveler 814c332
Merge branch 'main' into Add-`-AttachedBindableProperty]`
TheCodeTraveler c1b6d11
Merge branch 'main' into Add-`-AttachedBindableProperty]`
TheCodeTraveler ed177c2
Resolve CI / CD Failures
TheCodeTraveler File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
6 changes: 6 additions & 0 deletions
6
src/CommunityToolkit.Maui.Core/Primitives/Defaults/StateViewDefaults.shared.cs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| namespace CommunityToolkit.Maui.Core; | ||
|
|
||
| static class StateViewDefaults | ||
| { | ||
| public const string StateKey = ""; | ||
| } | ||
40 changes: 40 additions & 0 deletions
40
...kit.Maui.SourceGenerators.Benchmarks/AttachedBindablePropertySourceGeneratorBenchmarks.cs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,40 @@ | ||
| using BenchmarkDotNet.Attributes; | ||
| using CommunityToolkit.Maui.SourceGenerators.Internal.UnitTests.AttachedBindablePropertyAttributeSourceGeneratorTests; | ||
|
|
||
| namespace CommunityToolkit.Maui.SourceGenerators.Benchmarks; | ||
|
|
||
| [MemoryDiagnoser] | ||
| public class AttachedBindablePropertyAttributeSourceGeneratorBenchmarks | ||
| { | ||
| static readonly AttachedBindablePropertyAttributeSourceGenerator_ClassAttribute_CommonUsageTests commonUsageTests = new(); | ||
| static readonly AttachedBindablePropertyAttributeSourceGenerator_ClassAttribute_EdgeCaseTests edgeCaseTests = new(); | ||
| static readonly AttachedBindablePropertyAttributeSourceGenerator_ClassAttribute_IntegrationTests integrationTests = new(); | ||
|
|
||
| [Benchmark] | ||
| public Task GenerateAttachedBindableProperty_SimpleExample_GeneratesCorrectCode() | ||
| => commonUsageTests.GenerateAttachedBindableProperty_SimpleExample_GeneratesCorrectCode(); | ||
|
|
||
| [Benchmark] | ||
| public Task GenerateAttachedBindableProperty_MultipleProperties_GeneratesCorrectCode() | ||
| => commonUsageTests.GenerateAttachedBindableProperty_MultipleProperties_GeneratesCorrectCode(); | ||
|
|
||
| [Benchmark] | ||
| public Task GenerateAttachedBindableProperty_WithAllParameters_GeneratesCorrectCode() | ||
| => commonUsageTests.GenerateAttachedBindableProperty_WithAllParameters_GeneratesCorrectCode(); | ||
|
|
||
| [Benchmark] | ||
| public Task GenerateAttachedBindableProperty_InternalClass_GeneratesCorrectCode() | ||
| => commonUsageTests.GenerateAttachedBindableProperty_InternalClass_GeneratesCorrectCode(); | ||
|
|
||
| [Benchmark] | ||
| public Task GenerateAttachedBindableProperty_ComplexInheritanceScenario_GeneratesCorrectCode() | ||
| => integrationTests.GenerateAttachedBindableProperty_ComplexInheritanceScenario_GeneratesCorrectCode(); | ||
|
|
||
| [Benchmark] | ||
| public Task GenerateAttachedBindableProperty_NestedClass_GeneratesCorrectCode() | ||
| => integrationTests.GenerateAttachedBindableProperty_AttributeOnNestedInnerClass_GeneratesCorrectCode(); | ||
|
|
||
| [Benchmark] | ||
| public Task GenerateAttachedBindableProperty_WithComplexDefaultValues_GeneratesCorrectCode() | ||
| => edgeCaseTests.GenerateAttachedBindableProperty_WithComplexDefaultValues_GeneratesCorrectCode(); | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.