/// <summary>インラインテーブルを解析する。</summary> /// <param name="iter">イテレータ。</param> /// <returns>値情報。</returns> private ITomlValue GetInlineTable(TomlInnerBuffer.TomlIter iter) { var table = new TomlTable(); UTF8 c; while ((c = iter.GetChar(0)).ch1 != 0) { // 改行、空白部を取り除く iter.SkipLineFeedAndSpace(); // キー/値部分を取り込む this.AnalisysKeyAndValue(iter, table, true); // インラインテーブルが閉じられているか確認 // // 1. テーブルが閉じられている // 2. 次のキー/値を取得 // 3. エラー switch (iter.CloseInlineTable()) { case 1: // 1 return(table); case 2: // 2 // 空実装 break; default: // 3 break; } } throw new TomlAnalisysException(Resources.INLINE_TABLE_NOT_CLOSE_ERR, iter); }