WITH printOptions.body[i0]
SELECT
FROM
it: printObjectSize PrintingP4V3.Option => {
CrRPC.PutCARD[h, it.printObjectSize];
};
it: recipientName PrintingP4V3.Option => {
CrRPC.PutROPE[h, it.recipientName];
};
it: message PrintingP4V3.Option => {
CrRPC.PutROPE[h, it.message];
};
it: copyCount PrintingP4V3.Option => {
CrRPC.PutCARDINAL[h, it.copyCount];
};
it: pagesToPrint PrintingP4V3.Option => {
CrRPC.PutCARDINAL[h, it.pagesToPrint.beginningPageNumber];
CrRPC.PutCARDINAL[h, it.pagesToPrint.endingPageNumber];
};
it: mediumHint PrintingP4V3.Option => {
CrRPC.PutCARDINAL[h, ORD[it.mediumHint.type]];
WITH it.mediumHint
SELECT
FROM
it: paper PrintingP4V3.Medium => {
CrRPC.PutCARDINAL[h, ORD[it.paper.type]];
WITH it.paper
SELECT
FROM
it: unknown PrintingP4V3.Paper => {
NULL; -- RECORD []
};
it: knownSize PrintingP4V3.Paper => {
CrRPC.PutCARDINAL[h, ORD[it.knownSize]];
};
it: otherSize PrintingP4V3.Paper => {
CrRPC.PutCARDINAL[h, it.otherSize.width];
CrRPC.PutCARDINAL[h, it.otherSize.length];
};
ENDCASE;
};
ENDCASE;
};
it: priorityHint PrintingP4V3.Option => {
CrRPC.PutCARDINAL[h, ORD[it.priorityHint]];
};
it: releaseKey PrintingP4V3.Option => {
CrRPC.PutCARDINAL[h, it.releaseKey];
};
it: staple PrintingP4V3.Option => {
CrRPC.PutBOOL[h, it.staple];
};
it: twoSided PrintingP4V3.Option => {
CrRPC.PutBOOL[h, it.twoSided];
};
ENDCASE;