TESVSnip.Domain.Model.Record.MatchRecordStructureToRecord C# (CSharp) Method

MatchRecordStructureToRecord() public method

public MatchRecordStructureToRecord ( IList subs ) : bool
subs IList
return bool
        public bool MatchRecordStructureToRecord(IList<SubRecord> subs)
        {
            try
            {
                var records = GetStructures();
                if (records == null)
                    return false;

                RecordStructure rs;
                if (!records.TryGetValue(Name, out rs))
                {
                    return false;
                }

                var subrecords = new List<SubrecordStructure>();
                var sss = rs.subrecordTree;
                foreach (var sub in subs)
                {
                    sub.DetachStructure();
                }

                var conditions = new Dictionary<int, Conditional>();
                var context = new LoopContext(0, sss);
                var result = this.InnerLoop(subs, conditions, context);
                if (result == LoopContext.LoopEvalResult.Success && context.idx == subs.Count)
                {
                    return true;
                }
            }
            catch
            {
            }

            return false;
        }

Same methods

Record::MatchRecordStructureToRecord ( ) : bool