Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
641f008
Add some tests/todos
ascjones Mar 8, 2023
d2897f3
Testing
ascjones Mar 9, 2023
f094b0a
Add test for using well known selector without wildcard
ascjones Mar 9, 2023
c6771e4
Require reserved selector
ascjones Mar 10, 2023
8e8f3dd
Merge branch 'master' into aj/restrict-wildcard-selectors
ascjones Mar 17, 2023
91b3a16
Define reserved selector const
ascjones Mar 17, 2023
91ecf89
WIP defining wildcard selector complement
ascjones Mar 17, 2023
a9b7aaf
Compiles with wildcard selector complement
ascjones Mar 17, 2023
db836eb
Merge branch 'master' into aj/restrict-wildcard-selectors
ascjones Mar 24, 2023
1109f79
Return combined error on 2 or more messages
ascjones Mar 27, 2023
7f8f3ec
Fix up compile test for wildcard selector complement
ascjones Mar 27, 2023
b491a76
Add error for when wildcard complement used without wildcard
ascjones Mar 27, 2023
1ba18eb
Fix test
ascjones Mar 27, 2023
1450bcf
Fmt
ascjones Mar 27, 2023
3385ef0
Fmt
ascjones Mar 27, 2023
37ce190
Clear up error combine code
ascjones Mar 27, 2023
2af6423
Fix some wildcard complement tests
ascjones Mar 27, 2023
7b3e364
WIP use correct wildcard complement selector
ascjones Mar 28, 2023
ee4e483
Merge branch 'master' into aj/restrict-wildcard-selectors
ascjones Mar 29, 2023
1aed9d1
Introduce Symbol parsing for MetaValue
ascjones Mar 29, 2023
db324c7
Remove unused imports
ascjones Mar 29, 2023
c02bf84
Add wildcard-selector example
ascjones Mar 29, 2023
856fd08
Calculate correct wildcard complement selector
ascjones Mar 29, 2023
192b325
Use well known wildcard complement constant
ascjones Mar 29, 2023
742df48
Fix UI test
ascjones Mar 29, 2023
c5f991d
WIP wildcard selector integration test
ascjones Mar 29, 2023
a735fc1
WIP wildcard selector integration test
ascjones Mar 30, 2023
cfeae31
Test wildcard
ascjones Mar 30, 2023
f7fa437
Wildcard complement test, define const in prelude and reexport
ascjones Mar 30, 2023
ca1edee
spellcheck
ascjones Mar 30, 2023
74f098e
Merge branch 'master' into aj/restrict-wildcard-selectors
ascjones Mar 30, 2023
bcc76d8
Clippy
ascjones Mar 30, 2023
5e9b2fc
Use underscores for param bindings
ascjones Mar 30, 2023
763076f
Merge branch 'master' into aj/restrict-wildcard-selectors
ascjones Apr 12, 2023
3db0181
Merge branch 'master' into aj/restrict-wildcard-selectors
ascjones Apr 17, 2023
f9a6901
Merge branch 'master' into aj/restrict-wildcard-selectors
ascjones Apr 20, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Calculate correct wildcard complement selector
  • Loading branch information
ascjones committed Mar 29, 2023
commit 856fd0845caa46f574635a5d2ae50f93e048b522
8 changes: 5 additions & 3 deletions crates/ink/ir/src/ir/item_mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,9 @@ use syn::{

/// A well know selector reserved for the message required to be defined
/// alongside a wildcard selector. See https://github.com/paritytech/ink/issues/1676.
pub const IIP2_WILDCARD_COMPLEMENT_SELECTOR: [u8; 4] = [0xFF, 0xFF, 0xFF, 0xFF]; // todo: selector_bytes!("IIP2_WILDCARD_COMPLEMENT");
///
/// Calculated from `selector_bytes!("IIP2_WILDCARD_COMPLEMENT")`
pub const IIP2_WILDCARD_COMPLEMENT_SELECTOR: [u8; 4] = [0x9B, 0xAE, 0x9D, 0x5E];

/// The ink! module.
///
Expand Down Expand Up @@ -994,7 +996,7 @@ mod tests {
#[ink(message, selector = _)]
pub fn fallback(&self) {}

#[ink(message, selector = selector_bytes!("IIP2_WILDCARD_COMPLEMENT"))]
#[ink(message, selector = 0x9BAE9D5E)]
pub fn wildcard_complement_message(&self) {}
}
}
Expand Down Expand Up @@ -1165,7 +1167,7 @@ mod tests {
#[ink(constructor)]
pub fn my_constructor() -> Self {}

#[ink(message, selector = selector_bytes!("IIP2_WILDCARD_COMPLEMENT"))]
#[ink(message, selector = 0x9BAE9D5E)]
pub fn uses_reserved_wildcard_other_message_selector(&self) {}
}
}
Expand Down