File:
[local] /
rpl /
modules /
sets /
stol.rplc
Revision
1.1:
download - view:
text,
annotated -
select for diffs -
revision graph
Sun Jul 30 21:59:03 2017 UTC (7 years, 9 months ago) by
bertrand
Branches:
MAIN
CVS tags:
rpl-4_1_35,
rpl-4_1_34,
rpl-4_1_33,
rpl-4_1_32,
rpl-4_1_31,
rpl-4_1_30,
rpl-4_1_29,
rpl-4_1_28,
rpl-4_1_27,
HEAD
Ajout de L->S et de S->L.
1: #include "src/rplexternals.h"
2: #include "sets.h"
3:
4: declareExternalFunction(stol)
5: declareObject(object);
6: declareObject(result);
7: declareObject(subObject);
8:
9: integer8 i;
10:
11: HEADER
12: declareHelpString("Set to list");
13: numberOfArguments(1);
14: FUNCTION
15: pullFromStack(object, external);
16: returnOnError(freeObject(object));
17:
18: if (objectSubtype(object) ne ISET) then
19: executionError("Type not allowed");
20: freeObject(object);
21: endIf
22:
23: createListObject(result);
24:
25: loop(i = objectContainer(set_t, object)->size - 1,
26: i ge 0, postDecr(i))
27: createIntegerObject(subObject);
28: setInteger(subObject, objectContainer(set_t, object)->values[i]);
29: insertObjectIntoList(result, subObject);
30: endLoop
31:
32: freeObject(object);
33: pushOnStack(result);
34: END
35: endExternalFunction
36:
37: // vim: ts=4
CVSweb interface <joel.bertrand@systella.fr>