本文整理汇总了C#中Chain.Add方法的典型用法代码示例。如果您正苦于以下问题:C# Chain.Add方法的具体用法?C# Chain.Add怎么用?C# Chain.Add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Chain
的用法示例。
在下文中一共展示了Chain.Add方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetMatches
private List<Chain> GetMatches()
{
var matches = new List<Chain>();
for (var y = 0; y < Height; y++)
{
for (var x = 0; x < Width - 2;)
{
var animal = GetAnimalAt(x, y);
if (animal == null || !SpeciesMatch(x + 1, y, animal.Species) || !SpeciesMatch(x + 2, y, animal.Species))
{
x++;
continue;
}
var chain = new Chain(ChainType.Horizontal);
do chain.Add(GetAnimalAt(x++, y));
while (x < Width && SpeciesMatch(x, y, animal.Species));
matches.Add(chain);
}
}
for (var x = 0; x < Width; x++)
{
for (var y = 0; y < Height - 2;)
{
var animal = GetAnimalAt(x, y);
if (animal == null || !SpeciesMatch(x, y + 1, animal.Species) || !SpeciesMatch(x, y + 2, animal.Species))
{
y++;
continue;
}
var chain = new Chain(ChainType.Vertical);
do chain.Add(GetAnimalAt(x, y++));
while (y < Height && SpeciesMatch(x, y, animal.Species));
matches.Add(chain);
}
}
return matches;
}
示例2: Context
public Context()
{
rules = new List<IRule>();
rules.Add(new HeightRule());
rules.Add(new WidthRule());
rules.Add(new OneStatementPerLineRule());
rules.Add(new OneLinePerStatementRule());
rules.Add(new MethodHeightRule());
rules.Add(new VariableLenghtRule());
setupChain = new Chain<char>();
setupChain.Add(new Handler<char>('\'', HandleCharDefinition, true));
setupChain.Add(new Handler<char>('"', HandleStringDefinition, true));
setupChain.Add(new Handler<char>('#', HandleDirectiveDefinition, true));
setupChain.Add(new Handler<char>('/', HandleSlash, true));
setupChain.Add(new Handler<char>('*', HandleStar, true));
teardownChain = new Chain<char>();
teardownChain.Add(new Handler<char>(Constants.ASCII_LF, HandleNewLine, true));
}
示例3: AbstractRule
protected AbstractRule()
{
myChain = new Chain<char>();
myChain.Add(new Handler<char>(Constants.ASCII_LF, HandleNewline, true));
myChain.Add(new Handler<char>(StopIfBozo));
}