protected virtual object Visit(openehr.openehr.am.openehr_profile.data_types.quantity.Impl.C_DV_ORDINAL o, int depth) { C_DV_ORDINAL result = new C_DV_ORDINAL(); CloneC_Object(result, o); if (o.assumed_value() != null) result.assumed_value = CloneDvOrdinal((openehr.openehr.am.openehr_profile.data_types.quantity.Impl.ORDINAL)o.assumed_value()); if (!o.any_allowed()) { EiffelStructures.list.LINKED_LIST_REFERENCE adlOrdinals = o.items(); result.list = new DV_ORDINAL[adlOrdinals.count()]; adlOrdinals.start(); for (int i = 0; i < result.list.Length; i++) { result.list[i] = CloneDvOrdinal((openehr.openehr.am.openehr_profile.data_types.quantity.Impl.ORDINAL)adlOrdinals.active().item()); adlOrdinals.forth(); } } return result; }