ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/server/cfperl.xs
(Generate patch)

Comparing deliantra/server/server/cfperl.xs (file contents):
Revision 1.52 by root, Mon Sep 11 20:26:41 2006 UTC vs.
Revision 1.55 by root, Tue Sep 12 18:15:34 2006 UTC

201inline void sv_to (SV *sv, unsigned short &v) { v = SvIV (sv); } 201inline void sv_to (SV *sv, unsigned short &v) { v = SvIV (sv); }
202inline void sv_to (SV *sv, signed int &v) { v = SvIV (sv); } 202inline void sv_to (SV *sv, signed int &v) { v = SvIV (sv); }
203inline void sv_to (SV *sv, unsigned int &v) { v = SvUV (sv); } 203inline void sv_to (SV *sv, unsigned int &v) { v = SvUV (sv); }
204inline void sv_to (SV *sv, signed long &v) { v = SvIV (sv); } 204inline void sv_to (SV *sv, signed long &v) { v = SvIV (sv); }
205inline void sv_to (SV *sv, unsigned long &v) { v = SvUV (sv); } 205inline void sv_to (SV *sv, unsigned long &v) { v = SvUV (sv); }
206inline void sv_to (SV *sv, signed long long &v) { v = SvVAL64 (sv); } 206inline void sv_to (SV *sv, signed long long &v) { v = ( signed long long)SvVAL64 (sv); }
207inline void sv_to (SV *sv, unsigned long long &v) { v = SvVAL64 (sv); } 207inline void sv_to (SV *sv, unsigned long long &v) { v = (unsigned long long)SvVAL64 (sv); }
208inline void sv_to (SV *sv, float &v) { v = SvNV (sv); } 208inline void sv_to (SV *sv, float &v) { v = SvNV (sv); }
209inline void sv_to (SV *sv, double &v) { v = SvNV (sv); } 209inline void sv_to (SV *sv, double &v) { v = SvNV (sv); }
210inline void sv_to (SV *sv, player * &v) { v = (player *)SvPTR_ornull (sv, "cf::player"); } 210inline void sv_to (SV *sv, player * &v) { v = (player *)SvPTR_ornull (sv, "cf::player"); }
211inline void sv_to (SV *sv, object * &v) { v = (object *)SvPTR_ornull (sv, "cf::object"); } 211inline void sv_to (SV *sv, object * &v) { v = (object *)SvPTR_ornull (sv, "cf::object"); }
212inline void sv_to (SV *sv, archetype * &v) { v = (archetype *)SvPTR_ornull (sv, "cf::arch"); } 212inline void sv_to (SV *sv, archetype * &v) { v = (archetype *)SvPTR_ornull (sv, "cf::arch"); }
220 220
221template<class T> 221template<class T>
222inline void sv_to (SV *sv, refptr<T> &v) { T *tmp; sv_to (sv, tmp); v = tmp; } 222inline void sv_to (SV *sv, refptr<T> &v) { T *tmp; sv_to (sv, tmp); v = tmp; }
223 223
224template<int N> 224template<int N>
225inline void sv_to (SV *sv, char (&v)[N]) { snprintf (v, N, "%s", SvPV_nolen (sv)); } 225inline void sv_to (SV *sv, char (&v)[N]) { assign (v, SvPV_nolen (sv)); }
226 226
227static SV * 227static SV *
228newSVdt_va (va_list &ap, data_type type) 228newSVdt_va (va_list &ap, data_type type)
229{ 229{
230 SV *sv; 230 SV *sv;
1767 SET_FLAG (op, flag); 1767 SET_FLAG (op, flag);
1768 else 1768 else
1769 CLEAR_FLAG (op, flag); 1769 CLEAR_FLAG (op, flag);
1770 OUTPUT: RETVAL 1770 OUTPUT: RETVAL
1771 1771
1772object *head (object *op)
1773 PROTOTYPE: $
1774 CODE:
1775 RETVAL = op->head ? op->head : op;
1776 OUTPUT: RETVAL
1777
1778int is_head (object *op)
1779 PROTOTYPE: $
1780 CODE:
1781 RETVAL = !op->head;
1782 OUTPUT: RETVAL
1783
1772void 1784void
1773inv (object *obj) 1785inv (object *obj)
1774 PROTOTYPE: $ 1786 PROTOTYPE: $
1775 PPCODE: 1787 PPCODE:
1776{ 1788{

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines