Changeset f1f6034 in tol


Ignore:
Timestamp:
Feb 28, 2010, 9:58:13 AM (17 years ago)
Author:
Víctor de Buen <vdebuen@…>
Branches:
1941-docker-image-to-test, devel, master
Children:
da7fccc5
Parents:
0e3f1271
Message:

New built-in function Set Concat(Set set1, Set set2 [, Set set3, ...])

git-svn-id: ​https://www.tol-project.org/svn/tolp/trunk@2039 be4846ae-f051-483a-831f-b64e7d08527f

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tol/btol/set_type/setgra.cpp

    r0e3f1271 rf1f6034  
    589589}
    590590
     591//--------------------------------------------------------------------
     592DeclareContensClass(BSet, BSetTemporary, BSetConcatAll);
     593DefIntOpr(1, BSetConcatAll, "Concat", 2, 0,
     594          I2("(Set set1, Set set2 [, Set set3, ...])",
     595             "(Set cto1, Set cto2 [, Set cto3, ...])"),
     596          I2("Returns the concatenation of two or more sets.",
     597             "Devuelve la concatenación de dos o más conjuntos."),
     598          BOperClassify::SetAlgebra_);
     599//--------------------------------------------------------------------
     600void BSetConcatAll::CalcContens()
     601//--------------------------------------------------------------------
     602{
     603  BSet setOfSets;
     604  setOfSets.PutElement(ArgList());
     605  int k, n, totCard = 0;
     606  for(n=1; n<=setOfSets.Card(); n++)
     607  {
     608    BSet& set = Set(setOfSets[n]);
     609    totCard += set.Card();
     610  }
     611  contens_.PrepareStore(totCard);
     612  for(n=1; n<=setOfSets.Card(); n++)
     613  {
     614    BSet& set = Set(setOfSets[n]);
     615    for(k=1; k<=set.Card(); k++)
     616    {
     617      contens_.AddElement(set[k]);
     618    }
     619  }
     620}
     621
    591622
    592623//--------------------------------------------------------------------
    … …  
    736767    contens_ = set.Contens();
    737768}
     769
    738770
    739771
Note: See TracChangeset for help on using the changeset viewer.