45 lines
563 B
C++
45 lines
563 B
C++
namespace factor
|
|
{
|
|
|
|
template<typename T>
|
|
struct identity {
|
|
T operator()(T t)
|
|
{
|
|
return t;
|
|
}
|
|
};
|
|
|
|
struct no_fixup {
|
|
object *fixup_data(object *obj)
|
|
{
|
|
return obj;
|
|
}
|
|
|
|
code_block *fixup_code(code_block *compiled)
|
|
{
|
|
return compiled;
|
|
}
|
|
|
|
object *translate_data(const object *obj)
|
|
{
|
|
return fixup_data((object *)obj);
|
|
}
|
|
|
|
code_block *translate_code(const code_block *compiled)
|
|
{
|
|
return fixup_code((code_block *)compiled);
|
|
}
|
|
|
|
cell size(object *obj)
|
|
{
|
|
return obj->size();
|
|
}
|
|
|
|
cell size(code_block *compiled)
|
|
{
|
|
return compiled->size();
|
|
}
|
|
};
|
|
|
|
}
|