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

Make MethodCall classes non-generic #663

Merged
merged 8 commits into from
Aug 25, 2018

Commits on Aug 25, 2018

  1. Separate fluent API from MethodCall types

    Remove the fluent API interface implementations from `MethodCall` et
    al., and create new dedicated API types that implement them instead.
    To start off, these new types simply forward all calls to the `Method-
    Call` instances that they wrap.
    
    This might initially seem pointless, but it means that `MethodCall` et
    al. are no longer forced to implement lots of duplicate methods and be
    generic just because the fluent API requires it. We'll be able to trim
    down `MethodCall` et al., possibly even combine them into a single
    non-generic `MethodCall` type, then translate that simpler API into a
    generic, type-safe API in the newly added types.
    stakx committed Aug 25, 2018
    Configuration menu
    Copy the full SHA
    0e0c6d2 View commit details
    Browse the repository at this point in the history
  2. Let API call into uniform SetCallbackResponse

    Instead of forwarding the API types' various `Callback` methods to the
    corresponding `Callback` methods, which delegate to `SetCallbackWith-
    Arguments` and `SetCallbackWithoutArguments`, combine the latter into
    a new uniform method `SetCallbackResponse` and let the API types call
    that one directly.
    stakx committed Aug 25, 2018
    Configuration menu
    Copy the full SHA
    a605c28 View commit details
    Browse the repository at this point in the history
  3. Remove obsolete SetterMethodCall

    This subclass of `MethodCall` was previously only needed for its
    specially typed `Callback` method. This method was part of the fluent
    API, which has now been separated into new dedicated types.
    stakx committed Aug 25, 2018
    Configuration menu
    Copy the full SHA
    32a8b10 View commit details
    Browse the repository at this point in the history
  4. Let API call into uniform SetRaiseEventResponse

    Instead of forwarding the API types' various `Raises` methods to the
    corresponding `Raises` methods, which delegate to `RaisesImpl`, rename
    the latter to `SetRaiseEventResponse` and delegate to those directly.
    stakx committed Aug 25, 2018
    Configuration menu
    Copy the full SHA
    12a2cca View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    22e37a2 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    efb61c4 View commit details
    Browse the repository at this point in the history
  7. Remove obsolete MethodCall<T>

    This class has become practically identical with its base class
    `MethodCall` when its fluent API `Raises` methods were removed. Use
    the non-generic base class directly.
    stakx committed Aug 25, 2018
    Configuration menu
    Copy the full SHA
    2ad548c View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    bc7ea6f View commit details
    Browse the repository at this point in the history