void place(const place_data_t& place_data) { interface_ref().place(place_data); }
any_regular_t project() const { return interface_ref().project(); }
void measure_vertical(extents_t& calculated_horizontal, const place_data_t& placed_horizontal) { interface_ref().measure_vertical(calculated_horizontal, placed_horizontal); }
void measure(extents_t& result) { interface_ref().measure(result); }
bool test_subject(const V& subject) { return interface_ref().test_subject(poly_subject_t(subject)); }
bool test_direct_object(const U& subject, const V& dirobj) { return interface_ref().test_direct_object(poly_subject_t(subject), poly_direct_object_t(dirobj)); }
void display(const any_regular_t& x) { interface_ref().display(x); }
void display(const V& new_value) { interface_ref().display(any_regular_t(new_value)); }
any_regular_t convert(const V& new_value) const { return interface_ref().convert(any_regular_t(new_value)); }