{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DerivingVia #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
module THREE.BufferGeometry
(
BufferGeometryClass (..)
, BufferGeometry (..)
, THREE.BufferGeometry.new
) where
import Miso hiding (new)
import THREE.Internal as THREE
class (ToObject geometry, ToJSVal geometry) => BufferGeometryClass geometry where
isBufferGeometry :: Property geometry Bool
isBufferGeometry = MisoString -> Property geometry Bool
forall object field.
(ToObject object, ToJSVal field, FromJSVal field) =>
MisoString -> Property object field
property MisoString
"isBufferGeometry"
instance BufferGeometryClass JSVal
newtype BufferGeometry = BufferGeometry { BufferGeometry -> JSVal
unBufferGeometry :: JSVal }
deriving (BufferGeometry -> IO Object
(BufferGeometry -> IO Object) -> ToObject BufferGeometry
forall a. (a -> IO Object) -> ToObject a
$ctoObject :: BufferGeometry -> IO Object
toObject :: BufferGeometry -> IO Object
ToObject, ToObject BufferGeometry
ToJSVal BufferGeometry
Property BufferGeometry Bool
(ToObject BufferGeometry, ToJSVal BufferGeometry) =>
Property BufferGeometry Bool -> BufferGeometryClass BufferGeometry
forall geometry.
(ToObject geometry, ToJSVal geometry) =>
Property geometry Bool -> BufferGeometryClass geometry
$cisBufferGeometry :: Property BufferGeometry Bool
isBufferGeometry :: Property BufferGeometry Bool
BufferGeometryClass, BufferGeometry -> IO JSVal
(BufferGeometry -> IO JSVal) -> ToJSVal BufferGeometry
forall a. (a -> IO JSVal) -> ToJSVal a
$ctoJSVal :: BufferGeometry -> IO JSVal
toJSVal :: BufferGeometry -> IO JSVal
ToJSVal)
new :: THREE.Three BufferGeometry
new :: Three BufferGeometry
new = (JSVal -> BufferGeometry)
-> MisoString -> () -> Three BufferGeometry
forall args con.
ToArgs args =>
(JSVal -> con) -> MisoString -> args -> Three con
THREE.new JSVal -> BufferGeometry
BufferGeometry MisoString
"BufferGeometry" ()