// /*-------------------------------------------------------------------*\
// | Concrete Template : Natural_Kernel_C
// \*-------------------------------------------------------------------*/
#ifndef CT_NATURAL_KERNEL_C
#define CT_NATURAL_KERNEL_C 1
///------------------------------------------------------------------------
/// Global Context --------------------------------------------------------
///------------------------------------------------------------------------
/*!
#include "AI/Natural/Kernel.h"
!*/
///------------------------------------------------------------------------
/// Interface -------------------------------------------------------------
///------------------------------------------------------------------------
concrete_template <
concrete_instance class Natural_Base
/*!
implements
abstract_instance Natural_Kernel
!*/
>
class Natural_Kernel_C :
checks
concrete_instance Natural_Base
{
public:
procedure_body Multiply_By_Radix (
preserves Integer k
)
{
assert (0 <= k,
"0 <= k");
assert (k < self.Radix (),
"k < RADIX");
self.Natural_Base::Multiply_By_Radix (k);
}
};
#endif // CT_NATURAL_KERNEL_C
Last modified: Thu Jan 11 17:05:57 EST 2007