#include "third_party/blink/renderer/core/mojo/mojo_watcher.h"
#include "base/task/single_thread_task_runner.h"
#include "third_party/blink/public/platform/task_type.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_mojo_handle_signals.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_mojo_watch_callback.h"
#include "third_party/blink/renderer/core/execution_context/execution_context.h"
#include "third_party/blink/renderer/platform/bindings/script_state.h"
#include "third_party/blink/renderer/platform/heap/cross_thread_persistent.h"
#include "third_party/blink/renderer/platform/scheduler/public/post_cross_thread_task.h"
#include "third_party/blink/renderer/platform/wtf/cross_thread_functional.h"
namespace blink {
MojoWatcher* MojoWatcher::Create(mojo::Handle handle,
const MojoHandleSignals* signals_dict,
V8MojoWatchCallback* callback,
ExecutionContext* context) { … }
MojoWatcher::~MojoWatcher() = default;
MojoResult MojoWatcher::cancel() { … }
void MojoWatcher::Trace(Visitor* visitor) const { … }
bool MojoWatcher::HasPendingActivity() const { … }
void MojoWatcher::ContextDestroyed() { … }
MojoWatcher::MojoWatcher(ExecutionContext* context,
V8MojoWatchCallback* callback)
: … { … }
MojoResult MojoWatcher::Watch(mojo::Handle handle,
const MojoHandleSignals* signals_dict) { … }
MojoResult MojoWatcher::Arm(MojoResult* ready_result) { … }
void MojoWatcher::OnHandleReady(const MojoTrapEvent* event) { … }
void MojoWatcher::RunReadyCallback(MojoResult result) { … }
}