{"added":null,"apiVersion":1,"behindSince":null,"buildDepends":[],"categories":["devel","perl5"],"comment":"Safely and cleanly create closures via string eval","compare":"/compare/p5-eval-closure/index.json","dependentCount":null,"description":"String eval is often used for dynamic code generation. For instance,\nMoose uses it heavily, to generate inlined versions of accessors\nand constructors, which speeds code up at runtime by a significant\namount. String eval is not without its issues however - it's\ndifficult to control the scope it's used in (which determines which\nvariables are in scope inside the eval), and it can be quite slow,\nespecially if doing a large number of evals.\n\nThis module attempts to solve both of those problems. It provides\nan eval_closure function, which evals a string in a clean environment,\nother than a fixed list of specified variables. It also caches the\nresult of the eval, so that doing repeated evals of the same source,\neven with a different environment, will be much faster (but note\nthat the description is part of the string to be evaled, so it must\nalso be the same (or non-existent) if caching is to work properly).","flavors":[],"html":"https://daemonports.org/netbsd/devel/p5-Eval-Closure/","kind":"port","lastUpdate":"2026-07-16T19:01:23Z","license":["gnu-gpl-v2 OR artistic"],"maintainer":"pkgsrc-users@NetBSD.org","name":"p5-Eval-Closure","newest":true,"newestVersion":"0.14","noVulnData":false,"origin":"devel/p5-Eval-Closure","otherSystems":[{"maintainer":"perl@FreeBSD.org","newest":true,"origin":"devel/p5-Eval-Closure","path":"/devel/p5-Eval-Closure/","system":"FreeBSD","version":"0.14"},{"maintainer":"The OpenBSD ports mailing-list \u003cports@openbsd.org\u003e","newest":true,"noVulnData":true,"origin":"devel/p5-Eval-Closure","path":"/openbsd/devel/p5-Eval-Closure/","system":"OpenBSD","version":"0.14p0"},{"maintainer":"perl@FreeBSD.org","newest":true,"origin":"devel/p5-Eval-Closure","path":"/dragonfly/devel/p5-Eval-Closure/","system":"DragonFly","version":"0.14"},{"maintainer":"ports@MidnightBSD.org","newest":true,"noVulnData":true,"origin":"devel/p5-Eval-Closure","path":"/midnightbsd/devel/p5-Eval-Closure/","system":"MidnightBSD","version":"0.14"},{"maintainer":"perl@FreeBSD.org","newest":true,"noVulnData":true,"origin":"devel/p5-Eval-Closure","path":"","system":"HardenedBSD","version":"0.14"},{"maintainer":"perl@FreeBSD.org","newest":true,"noVulnData":true,"origin":"devel/p5-Eval-Closure","path":"","system":"GhostBSD","version":"0.14"},{"maintainer":"perl@FreeBSD.org","newest":true,"noVulnData":true,"origin":"devel/p5-Eval-Closure","path":"","system":"OPNsense","version":"0.14"}],"packages":[{"repo":"NetBSD 10.1 x86_64","versions":["0.14nb11"]},{"repo":"NetBSD 10.1 aarch64","versions":["0.14nb11"]},{"repo":"SmartOS / illumos x86_64","versions":["0.14nb11"]},{"repo":"macOS 15 arm64","versions":["0.14nb11"]}],"pkgName":"p5-Eval-Closure-0.14nb11","related":null,"repository":"pkgsrc","requiredBy":["devel/p5-Moose","devel/p5-MooseX-Method-Signatures","devel/p5-Params-ValidationCompiler","devel/p5-Reply","devel/p5-Specio"],"requiredByCount":5,"runDepends":["devel/p5-Sub-Exporter","devel/p5-Try-Tiny","lang/perl5"],"status":null,"system":"netbsd","systemLabel":"NetBSD","version":"0.14nb11","versions":null,"vulnerabilities":null,"www":"https://metacpan.org/release/Eval-Closure"}
