V Dir
This module provides functionalities similar to Python's
dir()
Installation
Install the module using vpm:
v install robinvandernoord.dir
Usage
Importing the Module
import robinvandernoord.dir
dir.dir()
The primary method to inspect any object is
dir.dir()
dir.properties()
dir.methods()
dir.dir[T](object T) []string
Example
import robinvandernoord.dir
import time
struct Person {
name string
birth_year int
}
fn (p Person) age() int {
current_year := time.now().year
return current_year - p.birth_year
}
fn main() {
person := Person{name: 'Alice', birth_year: 1993}
// Get all public methods and properties of the person object
dir_output := dir.dir(person) // []string
println(dir_output) // ['age', 'birth_year', 'name']
println(dir.properties(person)) // ['birth_year', 'name']
println(dir.methods(person)) // ['age']
}
Contribution
Contributions via issues or pull requests are welcome.
License
This project is licensed under the MIT License.