/// <summary> /// 解析输入参数 /// </summary> /// <param name="enumer">包含参数的枚举,子类可自行调用 enumer.MoveNext()</param> /// <returns></returns> protected override bool OnParse(IParseEnumerator enumer) { string target = enumer.Current; if (target.StartsWith("/")) { target = target.Substring(1); } if (target == enumer.Current) { return false; } int kvSplidPos = target.IndexOf("="); if (kvSplidPos == -1) { kvSplidPos = target.IndexOf(":"); } if (kvSplidPos == -1) { return false; } string key = target.Substring(0, kvSplidPos); if (key != this.Key) { return false; } enumer.Current = enumer.Current.Substring(2 + key.Length); return true; }
/// <summary> /// 解析输入参数 /// </summary> /// <param name="enumer">包含参数的枚举,子类可自行调用 enumer.MoveNext()</param> /// <returns></returns> protected override bool OnParse(IParseEnumerator enumer) { if (enumer.End) { throw new ArgumentNullException(string.Format("{0} 未定义值", this.Name)); } this.Value = enumer.Current; enumer.MoveNext(); return true; }
/// <summary> /// 解析输入参数 /// </summary> /// <param name="enumer">包含参数的枚举,子类可自行调用 enumer.MoveNext()</param> /// <returns></returns> protected override bool OnParse(IParseEnumerator enumer) { foreach (var prifex in this.Prifexs) { if (prifex.Parse(enumer)) { return true; } } return false; }
/// <summary> /// 解析输入参数 /// </summary> /// <param name="enumer">参数枚举器</param> /// <returns>如果解析成功返回 <c>true</c>,否则返回 <c>false</c></returns> public bool Parse(IParseEnumerator enumer) { if (this.InnerParseEntity == null) { return this.OnParse(enumer); } if (InnerParseEntity.Parse(enumer)) { return this.OnParse(enumer); } return false; }
/// <summary> /// ����������� /// </summary> /// <param name="enumer">����������ö�٣���������е��� enumer.MoveNext()</param> /// <returns></returns> protected override bool OnParse(IParseEnumerator enumer) { _targets.Add(enumer.Current); enumer.MoveNext(); if (this.OrderTarget && !enumer.End) // ���������˳���Ŀ�꣬��������ֵ����ΪĿ��ֵ { do { _targets.Add(enumer.Current); } while (enumer.MoveNext()); } return true; }
/// <summary> /// 解析输入参数 /// </summary> /// <param name="enumer">包含参数的枚举,子类可自行调用 enumer.MoveNext()</param> /// <returns></returns> protected override bool OnParse(IParseEnumerator enumer) { string target = enumer.Current; if (target.StartsWith("/") || (target.StartsWith("-") && !target.StartsWith("--"))) { if (target.Substring(1) == this.Key) { enumer.MoveNext(); return true; } } return false; }
/// <summary> /// 解析输入参数 /// </summary> /// <param name="enumer">包含参数的枚举,子类可自行调用 enumer.MoveNext()</param> /// <returns></returns> protected override bool OnParse(IParseEnumerator enumer) { string target = enumer.Current; if (target.StartsWith("--")) { target = target.Substring(2); } else if (target.StartsWith("/")) { target = target.Substring(1); } if (target == enumer.Current) { return false; } if (target == this.Key) { enumer.MoveNext(); return true; } return false; }
/// <summary> /// ����������� /// </summary> /// <param name="enumer">����������ö�٣���������е��� enumer.MoveNext()</param> /// <returns></returns> protected override bool OnParse(IParseEnumerator enumer) { return true; }
/// <summary> /// 解析输入参数 /// </summary> /// <param name="enumer">包含参数的枚举,子类可自行调用 enumer.MoveNext()</param> /// <returns></returns> protected override bool OnParse(IParseEnumerator enumer) { this.IsDefined = true; return true; }
/// <summary> /// 解析输入参数 /// </summary> /// <param name="enumer">包含参数的枚举,子类可自行调用 enumer.MoveNext()</param> /// <returns></returns> protected abstract bool OnParse(IParseEnumerator enumer);
/// <summary> /// 解析输入参数 /// </summary> /// <param name="enumer">包含参数的枚举,子类可自行调用 enumer.MoveNext()</param> /// <returns></returns> protected override bool OnParse(IParseEnumerator enumer) { ValueString = enumer.Current; enumer.MoveNext(); return true; }