Files
flipper/iOS/FlipperKit/FlipperPlugin.h
Rain ⁣ aa649ff48f standardize C-like MIT copyright headers throughout fbsource
Summary:
`/*` is the standard throughout open source code. For example, Firefox uses single /*: https://hg.mozilla.org/mozilla-central/file/21d22b2f541258d3d1cf96c7ba5ad73e96e616b5/gfx/ipc/CompositorWidgetVsyncObserver.cpp#l3

In addition, Rust considers `/**` to be a doc comment (similar to Javadoc) and having such a comment at the beginning of the file causes `rustc` to barf.

Note that some JavaScript tooling requires `/**`. This is OK since JavaScript files were not covered by the linter in the first place, but it would be good to have that tooling fixed too.

Reviewed By: zertosh

Differential Revision: D15640366

fbshipit-source-id: b4ed4599071516364d6109720750d6a43304c089
2019-06-06 19:40:28 -07:00

46 lines
1.2 KiB
Objective-C

/*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the LICENSE
* file in the root directory of this source tree.
*/
#import <Foundation/Foundation.h>
#import "SKMacros.h"
#import "FlipperResponder.h"
SK_EXTERN_C_BEGIN
void FlipperPerformBlockOnMainThread(void(^block)(), id<FlipperResponder> responder);
SK_EXTERN_C_END
@protocol FlipperConnection;
@protocol FlipperPlugin
/**
The plugin's identifier. This should map to a javascript plugin with the same identifier to ensure
messages are sent correctly.
*/
- (NSString *)identifier;
/**
Called when a connection has been established between this plugin and the corresponding plugin on
the Sonar desktop app. The provided connection can be used to register method receivers as well
as send messages back to the desktop app.
*/
- (void)didConnect:(id<FlipperConnection>)connection;
/**
Called when a plugin has been disconnected and the SonarConnection provided in didConnect is no
longer valid to use.
*/
- (void)didDisconnect;
/**
Returns true if the plugin is meant to be run in background too, otherwise it returns false.
*/
@optional
- (BOOL)runInBackground;
@end