module NHC.BinArray
( wUBA
) where
import NHC.GreenCard
import DUnboxedArray ({-type-}UnboxedArray(..))
import BinPtr ({-type-}BinPtr(..))
import Bin ({-type-}Bin(..))
%-#include "cLowUnboxedArray.h"
%fun wUBA :: UnboxedArray -> Bin a -> Bin a -> IO Int
%call (unboxedArray uba) (binPtr p) (binPtr end)
%code
% uba->block[uba->write] = htonl(p);
% uba->free--;
% uba->end = end;
% idx = uba->write++;
%result (int idx)
|