Skip to content

Instantly share code, notes, and snippets.

module Main where
import Prelude
import Data.Maybe
import Effect
import Effect.Console
import Effect.Unsafe
wat oh = unsafePerformEffect (log oh)
// Copyright (c) 2020 Nathan Faubion
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
//
// 1. Redistributions of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer.
//
// 2. Redistributions in binary form must reproduce the above copyright notice,
module Deref where
import Prelude hiding (map, apply, pure)
import Record as Record
import Prelude as Prelude
import Prim.Row as Row
import Data.Symbol (SProxy(..), class IsSymbol)
data Deref r1 (r2 :: # Type) a = Deref ({ | r1 } -> a)
module Deref where
import Prelude hiding (map, apply, pure)
import Record as Record
import Prelude as Prelude
import Prim.Row as Row
import Data.Symbol (SProxy(..), class IsSymbol)
data Deref r1 (r2 :: # Type) (r3 :: # Type) a = Deref ({ | r1 } -> a)
data TraverseProp (f :: Type -> Type) k = TraverseProp k
instance traverseProp ::
( Applicative f
, IsSymbol sym
, Row.Lacks sym rb
, Row.Cons sym b rb rc
, Mapping k a (f b)
) =>
FoldingWithIndex
purs: An internal error occurred during compilation: "Invalid argument to infer: ObjectUpdateNested (PositionedValue (SourceSpan {spanName = \"src/Awake/DeviceGraph/Graph.purs\", spanStart = SourcePos {sourcePosLine = 199, sourcePosColumn = 9}, spanEnd = SourcePos {sourcePosLine = 199, sourcePosColumn = 23}}) [] (Var (SourceSpan {spanName = \"src/Awake/DeviceGraph/Graph.purs\", spanStart = SourcePos {sourcePosLine = 199, sourcePosColumn = 9}, spanEnd = SourcePos {sourcePosLine = 199, sourcePosColumn = 23}}) (Qualified Nothing (Ident \"activePosition\")))) (PathTree (AssocList {runAssocList = [(\"y\",Leaf (PositionedValue (SourceSpan {spanName = \"src/Awake/DeviceGraph/Graph.purs\", spanStart = SourcePos {sourcePosLine = 200, sourcePosColumn = 17}, spanEnd = SourcePos {sourcePosLine = 200, sourcePosColumn = 21}}) [] (Var (SourceSpan {spanName = \"src/Awake/DeviceGraph/Graph.purs\", spanStart = SourcePos {sourcePosLine = 200, sourcePosColumn = 17}, spanEnd = SourcePos {sourcePosLine = 200, sourcePosColumn = 21}
module Main where
import Prelude
import Data.Generic.Rep
import Type.Proxy
import Data.Symbol (SProxy(..), reflectSymbol, class IsSymbol)
import Type.Equality
import Control.Alternative
import Control.Monad.Eff.Console (logShow)
type Debouncer =
{ var :: AVar Unit
, timer :: Fiber Unit
}
type State =
{ debouncer :: Maybe Debouncer
}
debounceTimeout :: Milliseconds -> AVar Unit -> Aff (avar :: AVAR | eff) (Fiber Unit)
type Callback eff a = Either Error a -> Eff eff Unit
type Producer eff a = Tuple a (Callback eff Unit)
data Consumer eff a
= Reader (Callback eff a)
| Taker (Callback eff a)
type Queue = NonEmpty Array
"use strict";
var $foreign = require("./foreign");
var Control_Applicative = require("../Control.Applicative");
var Control_Bind = require("../Control.Bind");
var Control_Monad_Eff = require("../Control.Monad.Eff");
var Control_Monad_Eff_Console = require("../Control.Monad.Eff.Console");
var Control_Monad_Error_Class = require("../Control.Monad.Error.Class");
var Control_Monad_Except = require("../Control.Monad.Except");
var Control_Monad_Except_Trans = require("../Control.Monad.Except.Trans");
var Control_Monad_Free = require("../Control.Monad.Free");