private static void InsertDeParticleAtPosition(Sentence sentence, int newPosition) { sentence.Texts.Insert( newPosition, DeParticleHelper.CreateNewDeParticle( sentence.Texts[newPosition - 1].pe_order, 0)); }
private void AddDeParticleToMDUnit(Sentence sentence, MoveableUnit[] mdPositions) { sentence.Texts.Insert( _mdSentenceDecorator.FirstVbPastPresBkpPositionAfterFirstModifier, DeParticleHelper.CreateNewDeParticle( sentence.Texts[mdPositions.Last().EndPosition].pe_order, 0)); }
private void ApplyDeParticlesWhereNNThenPASTThenBKBy(BKBySentenceDecorator bKBySentenceDecorator) { var textsBeforeBy = bKBySentenceDecorator.TextsBeforeBy; if (bKBySentenceDecorator.NNUnitBeforeBkBy(textsBeforeBy)) { int nnPosition = bKBySentenceDecorator.NNPosition; if (bKBySentenceDecorator.IsPASTUnitBetweenNNandBKBy(textsBeforeBy, nnPosition)) { DeParticleHelper.InsertDeParticleBeforeAndUnderline( bKBySentenceDecorator, nnPosition); int pastPosition = bKBySentenceDecorator .GetFirstPASTUnitPositionAfterNN( bKBySentenceDecorator, nnPosition); DeParticleHelper.InsertDeParticleAfterAndUnderline( bKBySentenceDecorator, pastPosition + 1); } } }