Until recently I had always used pcDefinePCell in a way that let Cadence guess the type or arguments I was passing to it, for example, as taken from the pcell reference manual:
( list (ddGetObj "libName") "cellName" "viewName" "viewType" )( ( param1 "defaultValue") ( param2 10) ( paramN 1))
Cadence could guess the type of param1, param2 and paramN and everything went fine. However the manual explicitly says that in the case of a boolean value, one should specify the dataType as in ( param2 dataType nil ), but doesn't provide a list of the dataTypes, at least not where I looked:
Virtuoso Parameterized Cell Reference p195Custom Layout SKILL Functions Reference p332SKILL Language User Guide p25
Please note that I don't only need the dataType format for booleans, but also for all other types. The reason for this is I'm writing a macro to replace all occurances of pcDefinePCell with myDefinePCell in my code. The later would then call pcDefinePCell and also define a new function that wraps code for (dbCreateParamInstByMasterName ...) with the proper parameter list belonging to this particular pcell.
There are many datatypes that can be used for PCell parameters, however I am not sure what the exact list is (so far, I too could not find a definitive list in the documentation yet).
While not exactly the answer you are looking for, there is a reduced list of parameter dataTypes that can be used if the parameter will also have CDF for it, see the following SourceLink Solution:
SourceLink Solution 11130422
I hope that this helps! In the meantime I will keep looking and post any results thatI find.