41 lines
881 B
C++
41 lines
881 B
C++
/** @file DClosure.cpp
|
|
*
|
|
* @author Roland Conybeare, Feb 2026
|
|
**/
|
|
|
|
#include "DClosure.hpp"
|
|
|
|
namespace xo {
|
|
using xo::mm::AGCObject;
|
|
|
|
namespace scm {
|
|
|
|
DClosure::DClosure(const DLambdaExpr * lm,
|
|
const DLocalEnv * env)
|
|
: lambda_{lm}, env_{env}
|
|
{}
|
|
|
|
DClosure *
|
|
DClosure::make(obj<AAllocator> mm,
|
|
const DLambdaExpr * lm,
|
|
const DLocalEnv * env)
|
|
{
|
|
void * mem = mm.alloc_for<DClosure>();
|
|
|
|
return new (mem) DClosure(lm, env);
|
|
}
|
|
|
|
obj<AGCObject>
|
|
DClosure::apply_nocheck(obj<ARuntimeContext> rcx,
|
|
const DArray * args)
|
|
{
|
|
(void)rcx;
|
|
(void)args;
|
|
|
|
assert(false);
|
|
}
|
|
|
|
} /*namespace scm*/
|
|
} /*namespace xo*/
|
|
|
|
/* end DClosure.cpp */
|