Beispiel #1
0
        public static IP5Any LocalizeHashElement(Runtime runtime, P5Hash hash, IP5Any index, ref SavedValue state)
        {
            string str_index = index.AsString(runtime);
            var saved = hash.LocalizeElement(runtime, str_index);
            var new_value = new P5Scalar(runtime);

            state.container = hash;
            state.str_key = str_index;
            state.value = saved;

            hash.SetItem(runtime, str_index, new_value);

            return new_value;
        }
Beispiel #2
0
        private P5Scalar GetInit(Runtime runtime)
        {
            P5Hash init = new P5Hash(parser_runtime);

            init.SetItem(parser_runtime, "generator",
                         new P5Scalar(new P5NetWrapper(generator)));
            init.SetItem(parser_runtime, "runtime",
                         new P5Scalar(new P5NetWrapper(runtime)));

            return new P5Scalar(parser_runtime, init);
        }