public static DataRecord Read(String ln, RecordReader ins0) { if (ins0.Open("DataRecord")) { DataRecord record = new DataRecord(); record.pl = ins0.NamedIndex("pl", IBM.ICU.Impl.Duration.Impl.DataRecord.EPluralization.names); record.pluralNames = ins0.StringTable("pluralName"); record.genders = ins0.NamedIndexArray("gender", IBM.ICU.Impl.Duration.Impl.DataRecord.EGender.names); record.singularNames = ins0.StringArray("singularName"); record.halfNames = ins0.StringArray("halfName"); record.numberNames = ins0.StringArray("numberName"); record.mediumNames = ins0.StringArray("mediumName"); record.shortNames = ins0.StringArray("shortName"); record.measures = ins0.StringArray("measure"); record.rqdSuffixes = ins0.StringArray("rqdSuffix"); record.optSuffixes = ins0.StringArray("optSuffix"); record.halves = ins0.StringArray("halves"); record.halfPlacements = ins0.NamedIndexArray("halfPlacement", IBM.ICU.Impl.Duration.Impl.DataRecord.EHalfPlacement.names); record.halfSupport = ins0.NamedIndexArray("halfSupport", IBM.ICU.Impl.Duration.Impl.DataRecord.EHalfSupport.names); record.fifteenMinutes = ins0.String("fifteenMinutes"); record.fiveMinutes = ins0.String("fiveMinutes"); record.requiresDigitSeparator = ins0.Bool("requiresDigitSeparator"); record.digitPrefix = ins0.String("digitPrefix"); record.countSep = ins0.String("countSep"); record.shortUnitSep = ins0.String("shortUnitSep"); record.unitSep = ins0.StringArray("unitSep"); record.unitSepRequiresDP = ins0.BoolArray("unitSepRequiresDP"); record.requiresSkipMarker = ins0.BoolArray("requiresSkipMarker"); record.numberSystem = ins0.NamedIndex("numberSystem", IBM.ICU.Impl.Duration.Impl.DataRecord.ENumberSystem.names); record.zero = ins0.Character("zero"); record.decimalSep = ins0.Character("decimalSep"); record.omitSingularCount = ins0.Bool("omitSingularCount"); record.omitDualCount = ins0.Bool("omitDualCount"); record.zeroHandling = ins0.NamedIndex("zeroHandling", IBM.ICU.Impl.Duration.Impl.DataRecord.EZeroHandling.names); record.decimalHandling = ins0.NamedIndex("decimalHandling", IBM.ICU.Impl.Duration.Impl.DataRecord.EDecimalHandling.names); record.fractionHandling = ins0.NamedIndex("fractionHandling", IBM.ICU.Impl.Duration.Impl.DataRecord.EFractionHandling.names); record.skippedUnitMarker = ins0.String("skippedUnitMarker"); record.allowZero = ins0.Bool("allowZero"); record.weeksAloneOnly = ins0.Bool("weeksAloneOnly"); record.useMilliseconds = ins0.NamedIndex("useMilliseconds", IBM.ICU.Impl.Duration.Impl.DataRecord.EMilliSupport.names); if (ins0.Open("ScopeDataList")) { IList list = new ArrayList(); // of ScopeData DataRecord.ScopeData data; while (null != (data = IBM.ICU.Impl.Duration.Impl.DataRecord.ScopeData.Read(ins0))) { ILOG.J2CsMapping.Collections.Generics.Collections.Add(list, data); } if (ins0.Close()) { record.scopeData = (DataRecord.ScopeData [])ILOG.J2CsMapping.Collections.Collections.ToArray(list, new DataRecord.ScopeData [list.Count]); } } if (ins0.Close()) { return(record); } } else { throw new Exception("did not find DataRecord while reading " + ln); } throw new Exception("null data read while reading " + ln); // Thread.dumpStack(); // return null; }