예제 #1
0
 public void Travel(IWriteVisitor visitor, Relation graph)
 {
     visitor.VisitValue(graph.Id, _argsId0);
     visitor.VisitValue(graph.Name, _argsName1);
     visitor.VisitValue(graph.Description, _argsDescription2);
     visitor.VisitValue(graph.Value, _argsValue3);
 }
 public void Travel(IWriteVisitor visitor, NullableValuesEntity graph)
 {
     //visitor.VisitValue(new int?(graph.Id), _argsId0);
     //visitor.VisitValue(graph.MayBool, _argsMayBool1);
     visitor.VisitValue(graph.MayInt, _argsMayInt2);
     //visitor.VisitValue(graph.MayDateTime, _argsMayDateTime3);
     //visitor.VisitValue(graph.MayTimeSpan, _argsMayTimeSpan4);
 }
예제 #3
0
        public void Travel(IWriteVisitor visitor, MultidimensionalArrayGraph graph)
        {
            {
                var c = graph.Value;
                visitor.Visit(c, _argsValue);

                if (c != null)
                {
                    for (var r0 = 0; r0 < c.GetLength(0); r0++)
                    {
                        visitor.Visit(c, VisitArgs.CollectionInCollection);
                        for (var r1 = 0; r1 < c.GetLength(1); r1++)
                        {
                            visitor.VisitValue(c[r0, r1], VisitArgs.CollectionItem);
                        }
                        visitor.Leave(c, VisitArgs.CollectionInCollection);
                    }
                }

                visitor.Leave(c, _argsValue);
            }
        }
예제 #4
0
 public void Visit(object graph, IWriteVisitor visitor)
 {
     var value = (Int16) _property.Ref.GetValue(graph);
     visitor.VisitValue(value, _args);
 }
예제 #5
0
        public void Travel(IWriteVisitor visitor, DataBlock graph)
        {
            visitor.VisitValue(graph.Id, _argsId);
            visitor.VisitValue(graph.String, _argsString);
            visitor.VisitValue(graph.Int16, _argsInt16);
            visitor.VisitValue(graph.Int32, _argsInt32);
            visitor.VisitValue(graph.Int64, _argsInt64);
            visitor.VisitValue(graph.UInt16, _argsUInt16);
            visitor.VisitValue(graph.UInt32, _argsUInt32);
            visitor.VisitValue(graph.UInt64, _argsUInt64);
            visitor.VisitValue(graph.Single, _argsSingle);
            visitor.VisitValue(graph.Double, _argsDouble);
            visitor.VisitValue(graph.TimeSpan, _argsTimeSpan);
            visitor.VisitValue(graph.Decimal, _argsDecimal);
            visitor.VisitValue(graph.DateTime, _argsDateTime);
            visitor.VisitValue(graph.Byte, _argsByte);
            visitor.VisitValue(graph.Boolean, _argsBoolean);
            visitor.VisitValue(graph.Blob, _argsBlob);

            {
                var c = graph.Messages;
                visitor.Visit(c, _argsMessages);

                if (c != null)
                {
                    foreach (var cv in c)
                    {
                        visitor.VisitValue(cv, VisitArgs.CollectionItem);
                    }
                }

                visitor.Leave(c, _argsMessages);
            }

            {
                var c = (ICollection <DateTime>)graph.Stamps;
                visitor.Visit(c, _argsStamps);
                if (c != null)
                {
                    foreach (var cv in c)
                    {
                        visitor.VisitValue(cv, VisitArgs.CollectionItem);
                    }
                }

                visitor.Leave(c, _argsStamps);
            }

            {
                var c = graph.Relation;
                visitor.Visit(c, _argsRelation);
                if (c != null)
                {
                    _travellerRelation0.Travel(visitor, c);
                }
                visitor.Leave(c, _argsRelation);
            }

            {
                var c = graph.DummyRelation;
                visitor.Visit(c, _argsDummyRelation);
                if (c != null)
                {
                    _travellerRelation0.Travel(visitor, c);
                }
                visitor.Leave(c, _argsDummyRelation);
            }

            {
                var c = (ICollection <Relation>)graph.SecondaryRelations;
                visitor.Visit(c, _argsSecondaryRelations);
                if (c != null)
                {
                    foreach (var cv in c)
                    {
                        visitor.Visit(cv, VisitArgs.CollectionItem);
                        _travellerRelation0.Travel(visitor, cv);
                        visitor.Leave(cv, VisitArgs.CollectionItem);
                    }
                }

                visitor.Leave(c, _argsSecondaryRelations);
            }

            {
                var c = (IDictionary <string, int>)graph.IndexedValues;
                visitor.Visit(c, _argsIndexedValues);
                if (c != null)
                {
                    foreach (var ckv in c)
                    {
                        visitor.VisitValue(ckv.Key, VisitArgs.DictionaryKey);
                        visitor.VisitValue(ckv.Value, VisitArgs.DictionaryValue);
                    }
                }
                visitor.Leave(c, _argsIndexedValues);
            }

            {
                var c = (IDictionary <Identifier, Category>)graph.Categories;
                visitor.Visit(c, _argsCategories);
                if (c != null)
                {
                    foreach (var ckv in c)
                    {
                        visitor.Visit(ckv.Key, VisitArgs.DictionaryKey);
                        _travellerIdentifier1.Travel(visitor, ckv.Key);
                        visitor.Leave(ckv.Key, VisitArgs.DictionaryKey);

                        visitor.Visit(ckv.Value, VisitArgs.DictionaryValue);
                        _travellerCategory2.Travel(visitor, ckv.Value);
                        visitor.Leave(ckv.Value, VisitArgs.DictionaryValue);
                    }
                }
                visitor.Leave(c, _argsCategories);
            }
        }
예제 #6
0
 public void Travel(IWriteVisitor visitor, Category graph)
 {
     visitor.VisitValue(graph.Name, _argsName0);
     visitor.VisitValue(graph.Description, _argsDescription1);
     visitor.VisitValue(graph.Image, _argsImage2);
 }
예제 #7
0
 public override void VisitValue(IWriteVisitor visitor, VisitArgs args, byte[] value)
 {
     visitor.VisitValue(value, args);
 }
예제 #8
0
 public override void VisitValue(IWriteVisitor visitor, VisitArgs args, DateTime value)
 {
     visitor.VisitValue(value, args);
 }
예제 #9
0
 public override void VisitValue(IWriteVisitor visitor, VisitArgs args, decimal value)
 {
     visitor.VisitValue(value, args);
 }
예제 #10
0
        public void Visit(object graph, IWriteVisitor visitor)
        {
            var value = (Int16)_property.Ref.GetValue(graph);

            visitor.VisitValue(value, _args);
        }
예제 #11
0
 public void Travel(IWriteVisitor visitor, Identifier graph)
 {
     visitor.VisitValue(graph.Id, _argsId0);
     visitor.VisitValue((int)graph.Type, _argsType1);
 }