{"schema_version":1,"metadata":{"branch":"current","release":"8.0","architecture":"amd64","generated_at":"2026-10-21T02:36:06.049247+00:00","source_url":"https://cdn.openbsd.org/pub/OpenBSD/snapshots/packages/amd64/sqlports-7.55.tgz","source_sha256":"a9ce8ec55a8fe364fc54ad95f17013a9932c665a6e50e55f31cee56f1d69cccc","package_count":12123,"source_kind":"sqlports"},"package":{"name":"p5-Eval-Closure-0.14p0","path":"devel/p5-Eval-Closure","url":"/packages/current/devel/p5-Eval-Closure/","comment":"safely and cleanly create closures via string eval ","homepage":"https://metacpan.org/release/Eval-Closure","maintainer":"The OpenBSD ports mailing-list <ports@openbsd.org>","description":"String eval is often used for dynamic code generation. For instance,\nMoose uses it heavily, to generate inlined versions of accessors and\nconstructors, which speeds code up at runtime by a significant amount.\nString eval is not without its issues however - it's difficult to\ncontrol the scope it's used in (which determines which variables are in\nscope inside the eval), and it's easy to miss compilation errors, since\neval catches them and sticks them in $@ instead.\n\nThis module attempts to solve these problems. It provides an\neval_closure function, which evals a string in a clean environment,\nother than a fixed list of specified variables. Compilation errors are\nrethrown automatically.\n","description_source":null,"description_unresolved":[],"package_architecture":"*","stem":"p5-Eval-Closure","readme":null,"dependencies":[{"path":"devel/p5-Try-Tiny","type":"runtime","package_spec":"","url":"/packages/current/devel/p5-Try-Tiny/"},{"path":"devel/p5-PadWalker","type":"test","package_spec":"","url":"/packages/current/devel/p5-PadWalker/"},{"path":"devel/p5-Test-Fatal","type":"test","package_spec":"","url":"/packages/current/devel/p5-Test-Fatal/"},{"path":"devel/p5-Test-Output","type":"test","package_spec":"","url":"/packages/current/devel/p5-Test-Output/"},{"path":"devel/p5-Test-Requires","type":"test","package_spec":"","url":"/packages/current/devel/p5-Test-Requires/"},{"path":"devel/p5-Try-Tiny","type":"test","package_spec":"","url":"/packages/current/devel/p5-Try-Tiny/"}],"reverse_dependencies":{"count":8,"url":"/packages/data/16/1632f643ee947a9c703545b425d098d6f81769a6f66cb651f262f2a9e8916fce.json"},"categories":["devel","perl5"],"flavors":[],"only_for_architectures":[],"not_for_architectures":[]}}
