Entity Path
An entity path is a string that tells MetaFFI where to find a specific entity (function, method, field, constructor) within a loaded module.
The entity path consists of key-value pairs and tags separated by commas:
key1=val1,tag1,...,tagN,keyN=valN
Each language plugin uses different keys and tags. While they are similar across plugins, they are not identical.
Language-Specific Documentation
| Language | Keys | Tags |
|---|---|---|
| Python3 | callable, attribute |
instance_required, setter, getter, varargs, named_args |
| JVM | class, callable, field |
instance_required, setter, getter |
| Go | callable, global, field |
instance_required, setter, getter |
Common Tags
instance_required
Used across all languages to indicate that an entity is an instance member (not static). When this tag is present, the first parameter passed to the callable must be the object instance.
setter / getter
Used to load a setter or getter for a field, attribute, or global variable.
Examples
callable=HelloWorld # Go function
callable=MyMap.Contains,instance_required # Go instance method
class=com.example.MyClass,callable=greet # Java static method
class=com.example.MyClass,callable=<init> # Java constructor
callable=testmap.contains,instance_required # Python instance method
attribute=five_seconds,getter # Python global getter