Beispiel #1
0
        protected IEnumerator <object> CreateTangles()
        {
            Delegate deserializer = null, serializer = null;

            foreach (var tf in TangleFields)
            {
                var constructor = tf.Type.GetConstructors()[0];
                var subStorage  = new SubStreamSource(Storage, tf.Name + "_");

                Deserializers.TryGetValue(tf.Name, out deserializer);
                Serializers.TryGetValue(tf.Name, out serializer);

                var theTangle = (ITangle)constructor.Invoke(new object[] {
                    Scheduler, subStorage, serializer, deserializer, false
                });
                tf.Value = theTangle;
                Tangles.Add(theTangle);
            }

            yield return(SymbolCache.CreateIndex <string>(
                             "ByFunction",
                             IndexSymbolByFunction
                             ).Bind(() => SymbolsByFunction));

            /*
             * yield return Tracebacks.CreateIndex(
             *  "ByFramePrefix",
             *  IndexTracebackByFrames
             * );
             */
        }
Beispiel #2
0
        protected IEnumerator<object> CreateTangles()
        {
            Delegate deserializer = null, serializer = null;

            foreach (var tf in TangleFields) {
                var constructor = tf.Type.GetConstructors()[0];
                var subStorage = new SubStreamSource(Storage, tf.Name + "_");

                Deserializers.TryGetValue(tf.Name, out deserializer);
                Serializers.TryGetValue(tf.Name, out serializer);

                var theTangle = (ITangle)constructor.Invoke(new object[] {
                    Scheduler, subStorage, serializer, deserializer, false
                });
                tf.Value = theTangle;
                Tangles.Add(theTangle);
            }

            yield return SymbolCache.CreateIndex(
                "ByFunction",
                IndexSymbolByFunction
            ).Bind(() => SymbolsByFunction);

            /*
            yield return Tracebacks.CreateIndex(
                "ByFramePrefix",
                IndexTracebackByFrames
            );
             */
        }