1
0
mirror of https://github.com/chylex/.NET-Community-Toolkit.git synced 2024-11-23 22:42:47 +01:00
Commit Graph

1968 Commits

Author SHA1 Message Date
Sergio Pedri
40d1976bf3 Switch branch name to main in analyzer files
Co-authored-by: Michael Hawker MSFT (XAML Llama) <24302614+michael-hawker@users.noreply.github.com>
2021-07-21 02:32:12 +02:00
Sergio Pedri
d9720a57f9 Renamed [AlsoNotifyFor] attribute to [AlsoNotifyChangeFor] 2021-07-21 02:32:12 +02:00
Sergio Pedri
d777b65886 Performance improvements to validation/messenger generated code 2021-07-21 02:32:12 +02:00
Sergio Pedri
5a1c227c50 Switched generated command field to concrete type
Doing this enables the JIT to devirtualize function calls through the property
2021-07-21 02:32:12 +02:00
Sergio Pedri
42318d208d Improved code generation for IRecipient generator 2021-07-21 02:32:12 +02:00
Sergio Pedri
84b2a29ee6 Improved code generation for ValidateAllProperties generator
Improved type safety, more AOT-friendly, removed Unsafe.As<T> hack
2021-07-21 02:32:12 +02:00
Sergio Pedri
a8eb60525a Minor code refactoring 2021-07-21 02:32:12 +02:00
Sergio Pedri
b51538aaf7 Enabled property args caching for ObservableValidator properties 2021-07-21 02:32:11 +02:00
Sergio Pedri
7392902cb0 Enabled property args caching for non dependent names 2021-07-21 02:32:11 +02:00
Sergio Pedri
c26bf62b2d Initial support for cached property names 2021-07-21 02:32:11 +02:00
Sergio Pedri
8860e46d3d Enabled nullability annotations for [ObservableProperty] 2021-07-21 02:32:11 +02:00
Sergio Pedri
ce9f9db8b1 Improved [ObservableProperty] codegen for ObservableObject 2021-07-21 02:32:11 +02:00
Sergio Pedri
8f82555b13 Added support for <summary> XML docs for generated commands 2021-07-21 02:32:11 +02:00
Sergio Pedri
45add983f7 Added ICommandGenerator diagnostics 2021-07-21 02:32:11 +02:00
Sergio Pedri
8adf8b2659 Stripped Async suffix to generated command names 2021-07-21 02:32:11 +02:00
Sergio Pedri
ebb0ced14f Enabled [ICommand] generation for all command types 2021-07-21 02:32:11 +02:00
Sergio Pedri
a131d8dbfe Enabled ICommandGenerator for RelayCommand type 2021-07-21 02:32:11 +02:00
Sergio Pedri
1cc237d65a Initial draft implementation of ICommandGenerator 2021-07-21 02:32:11 +02:00
Sergio Pedri
c81e15ae4a Added ICommandAttribute type 2021-07-21 02:32:11 +02:00
Sergio Pedri
779086cd49 Added draft tests for source generator diagnostics 2021-07-21 02:32:11 +02:00
Sergio Pedri
986dc0143f Minor optimization to [ObservableProperty] syntax receiver 2021-07-21 02:32:10 +02:00
Sergio Pedri
5edec89ec1 Added diagnostic for failure in ObservablePropertyGenerator 2021-07-21 02:32:10 +02:00
Sergio Pedri
10613019d6 Added diagnostic for observable property + validation without base class 2021-07-21 02:32:10 +02:00
Sergio Pedri
ff52e8054d Improved constructor definition for [AlsoNotifyForAttribute] type 2021-07-21 02:32:10 +02:00
Sergio Pedri
da216c9a0f Removed unnecessary if statement in generated code 2021-07-21 02:32:10 +02:00
Sergio Pedri
774c1558c2 Enabled validation support for generated properties 2021-07-21 02:32:10 +02:00
Sergio Pedri
6826c44943 Added unit tests for validation attributes generation 2021-07-21 02:32:10 +02:00
Sergio Pedri
596e13efea Added initial support for generated validation property attributes 2021-07-21 02:32:10 +02:00
Sergio Pedri
e3ca7429d3 Added AlsoNotifyForAttribute type 2021-07-21 02:32:10 +02:00
Sergio Pedri
4c9c2d691f Added handling for optional INotifyPropertyChanging in properties 2021-07-21 02:32:10 +02:00
Sergio Pedri
6dfbb023e7 Fixed leading trivia in some generated files 2021-07-21 02:32:10 +02:00
Sergio Pedri
0e3a8ec43e Switched to global:: paths for other generated files 2021-07-21 02:32:10 +02:00
Sergio Pedri
f1a4c76966 Added [GeneratedCode] attribute to some generators, refactoring 2021-07-21 02:32:09 +02:00
Sergio Pedri
b1fb60f331 Added handling for modifiers in sealed classes 2021-07-21 02:32:09 +02:00
Sergio Pedri
b744017678 Added XML docs copying from fields to generated properties 2021-07-21 02:32:09 +02:00
Sergio Pedri
341e394e9b Added initial version of ObservablePropertyAttribute 2021-07-21 02:32:09 +02:00
Sergio Pedri
d5cb56aec9 Minor code refactoring 2021-07-21 02:32:09 +02:00
Sergio Pedri
a72a683ea2 Added debugging attributes to remaining generated classes 2021-07-21 02:32:09 +02:00
Sergio Pedri
55dd2db7df Added debugging attributes to validator/messaging generated classes 2021-07-21 02:32:09 +02:00
Sergio Pedri
72b49f170a Minor code style tweaks 2021-07-21 02:32:09 +02:00
Sergio Pedri
1faf93acd7 Switched to SyntaxReceiver in remaining generators 2021-07-21 02:32:09 +02:00
Sergio Pedri
ce4078f9a6 Minor code refactoring 2021-07-21 02:32:09 +02:00
Sergio Pedri
b73e52f4b2 Added custom SyntaxReceiver to TransitiveMembersGenerator 2021-07-21 02:32:09 +02:00
Sergio Pedri
1266cb93ed Switched usage of ISymbol.ConstructedFrom to OriginalDefinition 2021-07-21 02:32:08 +02:00
Sergio Pedri
dd11625be5 Removed unnecessary ConstructUnboundGenericType() calls 2021-07-21 02:32:08 +02:00
Sergio Pedri
9f0a463c36 Switched symbol comparisons to GetTypeByMetadataName() 2021-07-21 02:32:08 +02:00
Sergio Pedri
29366b7b7b Enabled generated code for ValidateAllProperties 2021-07-21 02:32:08 +02:00
Sergio Pedri
797dfddfa9 Added ObservableValidatorValidateAllPropertiesGenerator 2021-07-21 02:32:08 +02:00
Sergio Pedri
6c6f351a91 Fixed analyzer target condition 2021-07-21 02:32:08 +02:00
Sergio Pedri
d4e6019d1e Enabled source generator packing into MVVM Toolkit
See https://github.com/windows-toolkit/WindowsCommunityToolkit/issues/3872#issuecomment-805023949
2021-07-21 02:32:08 +02:00