NAME
Class::Accessor::Fast::XS - XS replacement for Class::Accessor::Fast
OBSOLETE NOTE
This module has been stated rudimentary in favor of Class::XSAccesor::Compat, that implements the same API. Steffen Mueller did a great job improving concept of XS accessors in Class::XSAccesor framework and keep improving it further.
At this moment (Dec 2010) Class::XSAccesor::Compat generates 25% faster accessors than this module and has some thread safety fixes. There is no point in porting fixes or improvements from Steffen's code as you can just change the name and switch over.
DESCRIPTION
This module is a XS based replacement for Class::Accessor::Fast. Just replace Class::Accessor::Fast with Class::Accessor::Fast::XS and it should just work.
Read Class::Accessor::Fast and Class::Accessor for API docs and usage.
XS is about performance, but usually optimized accessors like Class::Accessor::Fast and many other with similar optimizations give you enough performance to make accessors NOT a bottleneck. In a real applications switch from Class::Accessor::Fast to this module can give you 1-5% boost.
Want to compare performance of different solutions? Use App::Benchmark::Accessors, but do remember that these benchmarks don't take into account various properties and advances of different implementations.
CREDITS
This code is heavily based on Steffen Mueller's Class::XSAccessor.
SEE ALSO
There are enormous amount of different accessors generators with different properties, behavior and performance, here is list of some:
accessors, Class::Accessor, Class::MethodMaker, Class::XSAccessor, Object::Accessor...
AUTHOR
Ruslan Zakirov <Ruslan.Zakirov@gmail.com>
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.