Algorithms.h 912 B

1234567891011121314151617181920212223242526
  1. /*
  2. * Copyright (c) 2024, Shannon Booth <shannon@serenityos.org>
  3. *
  4. * SPDX-License-Identifier: BSD-2-Clause
  5. */
  6. #pragma once
  7. #include <LibGC/Function.h>
  8. #include <LibGC/Ptr.h>
  9. #include <LibWeb/WebIDL/ExceptionOr.h>
  10. #include <LibWeb/WebIDL/Promise.h>
  11. namespace Web::Streams {
  12. using SizeAlgorithm = GC::Function<JS::Completion(JS::Value)>;
  13. using PullAlgorithm = GC::Function<GC::Ref<WebIDL::Promise>()>;
  14. using CancelAlgorithm = GC::Function<GC::Ref<WebIDL::Promise>(JS::Value)>;
  15. using StartAlgorithm = GC::Function<WebIDL::ExceptionOr<JS::Value>()>;
  16. using AbortAlgorithm = GC::Function<GC::Ref<WebIDL::Promise>(JS::Value)>;
  17. using CloseAlgorithm = GC::Function<GC::Ref<WebIDL::Promise>()>;
  18. using WriteAlgorithm = GC::Function<GC::Ref<WebIDL::Promise>(JS::Value)>;
  19. using FlushAlgorithm = GC::Function<GC::Ref<WebIDL::Promise>()>;
  20. using TransformAlgorithm = GC::Function<GC::Ref<WebIDL::Promise>(JS::Value)>;
  21. }