コード例 #1
0
        public void IterateThrough_fromRoot(
            string iteration_in,
            OGen.lib.generator.utils.IterationFoundDelegate iteration_found_in
            )
        {
            bool _valuehasbeenfound = false;

            IterateThrough_fromRoot(
                iteration_in,
                iteration_found_in,
                ref _valuehasbeenfound
                );
        }
コード例 #2
0
 public void IterateThrough_fromRoot(
     string iteration_in,
     OGen.lib.generator.utils.IterationFoundDelegate iteration_found_in,
     ref bool valueHasBeenFound_out
     )
 {
     OGen.lib.generator.utils.ReflectThrough(
         this,
         Root_Diagram,
         iteration_found_in,
         iteration_in,
         Root_Diagram,
         false,
         true,
         ref valueHasBeenFound_out
         );
 }
コード例 #3
0
        public void IterateThrough_fromRoot(
            string iteration_in,
            OGen.lib.generator.utils.IterationFoundDelegate iteration_found_in,
            ref bool valueHasBeenFound_out
            )
        {
            valueHasBeenFound_out = false;
            bool   _didit = false;
            string _begin;
            string _indexstring;
            string _end;

            if (OGen.lib.generator.utils.rootExpression_TryParse(
                    iteration_in,
                    ROOT_METADATA,
                    out _begin,
                    out _indexstring,
                    out _end
                    ))
            {
                if (_indexstring == "n")
                {
                    for (int i = 0; i < metadatacollection_.Count; i++)
                    {
                        metadatacollection_[i].IterateThrough_fromRoot(
                            string.Format(
                                "{0}{1}{2}",
                                _begin,
                                i,
                                _end
                                ),
                            iteration_found_in,
                            ref valueHasBeenFound_out
                            );
                    }
                    _didit = true;
                }
                else
                {
                    int _indexint = int.Parse(_indexstring);
                    metadatacollection_[
                        _indexint
                    ].IterateThrough_fromRoot(
                        string.Format(
                            "{0}{1}{2}",
                            _begin,
                            _indexint,
                            _end
                            ),
                        iteration_found_in,
                        ref valueHasBeenFound_out
                        );

                    _didit = true;
                }
            }
            if (OGen.lib.generator.utils.rootExpression_TryParse(
                    iteration_in,
                    ROOT_SCHEMA,
                    out _begin,
                    out _indexstring,
                    out _end
                    ))
            {
                if (_indexstring == "n")
                {
                    for (int i = 0; i < schemacollection_.Count; i++)
                    {
                        schemacollection_[i].IterateThrough_fromRoot(
                            string.Format(
                                "{0}{1}{2}",
                                _begin,
                                i,
                                _end
                                ),
                            iteration_found_in,
                            ref valueHasBeenFound_out
                            );
                    }
                    _didit = true;
                }
                else
                {
                    int _indexint = int.Parse(_indexstring);
                    schemacollection_[
                        _indexint
                    ].IterateThrough_fromRoot(
                        string.Format(
                            "{0}{1}{2}",
                            _begin,
                            _indexint,
                            _end
                            ),
                        iteration_found_in,
                        ref valueHasBeenFound_out
                        );

                    _didit = true;
                }
            }
            if (!_didit)
            {
                throw new Exception(string.Format(
                                        "\n---\n{0}.{1}.IterateThrough_fromRoot(...): can't handle: {2}\n---",
                                        typeof(XS__RootMetadata).Namespace,
                                        typeof(XS__RootMetadata).Name,
                                        iteration_in
                                        ));
            }
        }