/// <summary> /// リストまたはタプルにインデクスでアクセスします。境界チェックは行われません。 /// </summary> /// <param name="index"></param> /// <returns></returns> public QiValue this[int index] { //TODO: Map型でキーが整数だった場合、とかどう思いますかね get { switch (ContentValueKind) { case QiValueKind.QiList: return(QiApiValue.GetList(NonDynamicValue, (uint)index)); case QiValueKind.QiTuple: return(QiApiValue.GetTuple(NonDynamicValue, (uint)index)); default: throw new InvalidOperationException("QiValue is neither list or tuple"); } } set { switch (ContentValueKind) { case QiValueKind.QiList: QiApiValue.SetList(NonDynamicValue, (uint)index, value); return; case QiValueKind.QiTuple: QiApiValue.SetTuple(NonDynamicValue, (uint)index, value); return; default: throw new InvalidOperationException("QiValue is neither list or tuple"); } } }