Exemplo n.º 1
0
 public void Remove(Statement statement)
 {
     if (statement.AnyNull)
     {
         for (int i = 0; i < statements.Count; i++)
         {
             Statement s = (Statement)statements[i];
             if (statement.Matches(s))
             {
                 statements.RemoveAt(i); i--;
                 if (isIndexed)
                 {
                     GetIndexArray(statementsAboutSubject, s.Subject).Remove(s);
                     GetIndexArray(statementsAboutObject, s.Object).Remove(s);
                 }
             }
         }
     }
     else
     {
         statements.Remove(statement);
         if (isIndexed)
         {
             GetIndexArray(statementsAboutSubject, statement.Subject).Remove(statement);
             GetIndexArray(statementsAboutObject, statement.Object).Remove(statement);
         }
     }
 }