Пример #1
0
        public CS_GetkenAsync()
        {                  // コンストラクタ
            _wbuf  = null; // 設定情報無し
            _empty = true;

            lrskip = null;
        }
Пример #2
0
        public async Task ClearAsync()
        {                  // 作業領域の初期化
            _wbuf  = null; // 設定情報無し
            _empty = true;

            lrskip = null;
        }
Пример #3
0
        public CS_GetkenAsync()
        {   // コンストラクタ
            _wbuf = null;       // 設定情報無し
            _empty = true;

            lrskip = null;
        }
Пример #4
0
        private async Task SetbufAsync(String _strbuf)
        {   // [_wbuf]情報設定
            _wbuf = _strbuf;

            if (_wbuf == null)
            {   // 設定情報は無し?
                _empty = true;
            }
            else
            {   // 整形処理を行う
                // 不要情報削除
                if (lrskip == null)
                {   // 未定義?
                    lrskip = new CS_LRskipAsync();
                }
                await lrskip.ExecAsync(_wbuf);

                _wbuf = lrskip.Wbuf;

                // 作業の為の下処理
                if (_wbuf.Length == 0 || _wbuf == null)
                {   // バッファー情報無し
                    // _wbuf = null;
                    _empty = true;
                }
                else
                {
                    _empty = false;
                }
            }
        }
Пример #5
0
        public CS_LnkcntAsync()
        {                   // コンストラクタ
            _wbuf   = null; // 設定情報無し
            _empty  = true;
            _lnkcnt = 0;

            lrskip = null;
        }
Пример #6
0
        public CS_BufsupAsync()
        {                   // コンストラクタ
            _wbuf   = null; // 設定情報無し
            _empty  = true;
            _rem    = null;
            _remark = false;

            lrskip = null;
        }
Пример #7
0
        public MainPage()
        {
            this.InitializeComponent();

            lskip  = new CS_LskipAsync();
            rskip  = new CS_RskipAsync();
            lrskip = new CS_LRskipAsync();

            TextBox01.Text = "";

            // 初期表示をクリアする
            ClearResultTextBox();
        }
Пример #8
0
        private async Task SetbufAsync(String _strbuf)
        {   // [_wbuf]情報設定
            _wbuf = _strbuf;
            if (_wbuf == null)
            {   // 設定情報は無し?
                _empty = true;
            }
            else
            {   // 整形処理を行う
                // 不要情報削除

                /*
                 *              if (rskip == null || lskip == null)
                 *              {   // 未定義?
                 *                  rskip = new CS_RskipAsync();
                 *                  lskip = new CS_LskipAsync();
                 *              }
                 *              rskip.Wbuf = _wbuf;
                 *              await rskip.ExecAsync();
                 *              lskip.Wbuf = rskip.Wbuf;
                 *              await lskip.ExecAsync();
                 *              _wbuf = lskip.Wbuf;
                 */
                if (lrskip == null)
                {   // 未定義?
                    lrskip = new CS_LRskipAsync();
                }
                await lrskip.ExecAsync(_wbuf);

//                Task task = lrskip.ExecAsync(_wbuf);
//                task.Wait();
                _wbuf = lrskip.Wbuf;

                // 作業の為の下処理
                if (_wbuf.Length == 0 || _wbuf == null)
                {   // バッファー情報無し
                    // _wbuf = null;
                    _empty = true;
                }
                else
                {
                    _empty = false;
                }
            }
        }
Пример #9
0
        public async Task ClearAsync()
        {   // 作業領域の初期化
            _wbuf = null;       // 設定情報無し
            _empty = true;

            lrskip = null;
        }
Пример #10
0
        private async Task SetbufAsync(String _strbuf)
        {   // [_wbuf]情報設定
            _wbuf = _strbuf;

            if (_wbuf == null)
            {   // 設定情報は無し?
                _empty = true;
            }
            else
            {   // 整形処理を行う
                // 不要情報削除
                if (lrskip == null)
                {   // 未定義?
                    lrskip = new CS_LRskipAsync();
                }
                await lrskip.ExecAsync(_wbuf);
                _wbuf = lrskip.Wbuf;

                // 作業の為の下処理
                if (_wbuf.Length == 0 || _wbuf == null)
                {   // バッファー情報無し
                    // _wbuf = null;
                    _empty = true;
                }
                else
                {
                    _empty = false;
                }
            }
        }
Пример #11
0
        public async Task <Boolean> ExecAsync(Boolean remflg, String msg)
        {                           // 構文評価を行う
            await SetbufAsync(msg); // 入力内容の作業領域設定

            _remark = remflg;       // コメント情報を設定

            if (!_empty)
            {                           // バッファーに実装有り
                // 構文評価を行う
                int _pos;               // 位置情報
                _rem = null;            // コメント情報初期化
                Boolean _judge = false; // Rskip稼働の判断

                if (lrskip == null)
                {   // 未定義?
                    lrskip = new CS_LRskipAsync();
                }

                do
                {
                    if (_judge == true)
                    {                   // Rskip稼働?
                        await Reskip(); // Rskip・Lskip稼働

                        _judge = false;
                        if (_wbuf == null)
                        {   // 評価対象が存在しない?
                            break;
                        }
                    }

                    _pos = _wbuf.IndexOf(@"//");
                    if (_pos != -1)
                    {   // コメント"//"検出?
                        await Supsub(_pos);

                        break;
                    }

                    _pos = _wbuf.IndexOf(@"/*");
                    if (_pos != -1)
                    {   // コメント"/*"検出?
                        await Supsub(_pos);

                        _remark = true;         // コメント開始
                        _judge  = true;         // Rskip稼働
                    }

                    _pos = _wbuf.IndexOf(@"*/");
                    if (_pos != -1)
                    {   // コメント"*/"検出?
                        await RSupsub(_pos);

                        _remark = false;        // コメント終了
                        _judge  = true;         // Rskip稼働
                    }

                    if (_rem != null)
                    {   // コメント設定有り?
                        _pos = _rem.IndexOf(@"*/");
                        if (_pos != -1)
                        {   // コメント"*/"検出?
                            await RRSupsub(_pos);

                            _remark = false;        // コメント終了
                            _judge  = true;         // Rskip稼働
                        }
                    }
                } while (_pos > 0);

                await Reskip();              // Rskip稼働

                if (_wbuf == null)
                {   // バッファー情報無し
                    // _wbuf = null;
                    _empty = true;
                }
            }

            return(_remark);                     // コメントの継続情報を返す
        }