Skip to content
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

Finish Removing Nonmutating #2127

Conversation

InsertCreativityHere
Copy link
Member

@InsertCreativityHere InsertCreativityHere commented May 7, 2024

This PR finishes removing nonmutating.
This is a sister PR to #2121, which removed the last of the 'nonmutating' metadata checks.
As-of this PR, we should no longer be sending nonmutating, nor making any distinction between it and idempotent.

This PR:

  • Changes the built-in Object operations (ice_isA, ice_ping, ice_id, ice_ids) to use OperationMode::Idempotent, instead of OperationMode::Nonmutating which they're currently using.
  • Deletes the parts of the 'Ice/operations' test which were solely testing which operation mode those operations used.
  • Updates the Slice doc comments for OperationMode

In Ruby, I couldn't find how/where we specify the operation mode these 4 built-ins use...
We define the operations here (v) but I couldn't figure out how an operation mode gets specified.

ice/ruby/src/IceRuby/Proxy.cpp

Lines 1214 to 1217 in 6002b49

rb_define_method(_proxyClass, "ice_isA", CAST_METHOD(IceRuby_ObjectPrx_ice_isA), -1);
rb_define_method(_proxyClass, "ice_ping", CAST_METHOD(IceRuby_ObjectPrx_ice_ping), -1);
rb_define_method(_proxyClass, "ice_ids", CAST_METHOD(IceRuby_ObjectPrx_ice_ids), -1);
rb_define_method(_proxyClass, "ice_id", CAST_METHOD(IceRuby_ObjectPrx_ice_id), -1);

@InsertCreativityHere InsertCreativityHere merged commit 6eb4c6f into zeroc-ice:main May 7, 2024
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants