public void Crawl() { FieldToken token = new FieldToken(_parentToken, _field, () => _field.GetValue(_declaringValue), o => _field.SetValue(_declaringValue, o)); _objectCrawler.AcceptVisitors(token); if (token.IgnoreCrawl) { return; } _objectCrawler.Crawl(token.Field.FieldType, token, token.Value); }
public void Crawl() { PropertyToken token = new PropertyToken(_parentToken, _property, () => _property.GetValue(_declaringValue), o => _property.SetValue(_declaringValue, o)); _objectCrawler.AcceptVisitors(token); if (token.IgnoreCrawl) { return; } _objectCrawler.Crawl(token.Property.PropertyType, token, token.Value); }
public void Crawl() { ReferenceToken token = new ReferenceToken(_parentToken, _type, _value); _objectCrawler.AcceptVisitors(token); if (token.IgnoreCrawl) { return; } CrawlProperties(token); CrawlFields(token); }
public void Crawl() { EnumerableToken token = new EnumerableToken(_parentToken, _type, _value); _objectCrawler.AcceptVisitors(token); if (token.IgnoreCrawl) { return; } foreach (var item in (IEnumerable)_value) { if (item == null) { continue; } _objectCrawler.Crawl(item.GetType(), token, item); } }
public void Crawl() { DictionaryToken token = new DictionaryToken(_parentToken, _type, _value); _objectCrawler.AcceptVisitors(token); if (token.IgnoreCrawl) { return; } IDictionary dictionary = (IDictionary)_value; foreach (object key in dictionary.Keys) { _objectCrawler.Crawl(key.GetType(), token, key); var value = dictionary[key]; _objectCrawler.Crawl(key.GetType(), token, value); } }
public void Crawl() { ValueToken token = new ValueToken(_parentToken, _type, _value); _objectCrawler.AcceptVisitors(token); }