Actually, there would also be the "context" which gives access to the @layer variable (a QgsVectorLayer object) and other additional things.
It's just slightly more complex to set up because it's not proxied to the @qgsfunction. One will need to subclass QgsExpression.Function as done here: https://github.com/qgis/QGIS/blob/master/python/core/__init__.py#L74-L102 And then register it manually. I think we should also send this to the @qgsfunction in QGIS 3. Matthias On 05/05/2017 12:42 PM, Nathan Woodrow wrote: > Hey Andreas, > > Parent means the parent expression itself. So in a function, you can > know what the whole expression is e.g it points to the instance of. > > You can't really know what the layer because expressions are not always > layer bound and QgsFeatures don't hold a reference to the layer they are > from. Best you can do at the moment I think is to pass the layer name > or id into the custom expressions. > > - Nathan > > > _______________________________________________ > QGIS-Developer mailing list > QGIS-Developer@lists.osgeo.org > List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer > Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer > _______________________________________________ QGIS-Developer mailing list QGIS-Developer@lists.osgeo.org List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer