detect static method

Reads the advertisement before any message function is bound or called.

Implementation

static NativeMessageHandleAbi detect(ffi.DynamicLibrary library) {
  final version = library.providesSymbol('ct_message_handle_abi_version')
      ? library.lookupFunction<ffi.Uint32 Function(), int Function()>(
          'ct_message_handle_abi_version',
        )()
      : null;
  return negotiate(version: version, providesSymbol: library.providesSymbol);
}