package ppx_platform

Build not checked
  1. Overview
  2. Docs
Platform-specific code for native and Melange builds

Install

dune-project
 Dependency

Authors

Maintainers

Sources

ppx_platform-0.2.0.tbz
sha256=3b63eb4fc72762bedb12b51f34b05976f096916ea886ea8f54dafe22474e276d
sha512=5acbd9de60cfd026ddd92078e5943d6f3081d4299ee3ba2e2194d11e5e6a6fc93d6b0166684109bc1fd9549334e73cd6951dda0e61199ab527194038083b345d

doc/src/ppx_platform.runtime/ppx_platform_runtime.ml.html

Source file ppx_platform_runtime.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
exception Impossible_in_ssr of string

let fail_impossible_action_in_ssr fn =
  let backtrace = Printexc.get_callstack 8 in
  let raw_callstack = Printexc.raw_backtrace_to_string backtrace in
  let () =
    Printf.printf
      {|'%s' should only run on the client. Make sure you aren't accidentally calling this function in a server-side context.

Here's the raw callstack:

%s
|}
      fn raw_callstack
  in
  raise (Impossible_in_ssr (Printf.sprintf {|'%s' shouldn't run on the server|} fn))