ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/server/typemap
Revision: 1.26
Committed: Tue Sep 4 05:43:22 2007 UTC (16 years, 8 months ago) by root
Branch: MAIN
CVS Tags: rel-2_4, rel-2_2, rel-2_3, rel-2_32, rel-2_43, rel-2_42, rel-2_41
Changes since 1.25: +6 -3 lines
Log Message:
- implemented ref/deref "framework" that allows one to create
  semipersistent references and dereference them later
  (works only for players right now).
- (partially) expose freezer and thawer to perl.
- thawers now do next() automatically after instantiating.
- allow the thawer to record delayed dereference requests to be
  resolved, well, later (should be a different class actually
  but lets stay realistic).
- use thawers when loading maps and players and resolve delayed
  derefs after loading them before activating them.
- serialise io for no good reason.

File Contents

# Content
1 val64 T_VAL64
2 uint64 T_VAL64
3 sint16 T_INT
4 sint8 T_INT
5 faceidx T_INT
6 animidx T_INT
7
8 shstr T_PV
9 const shstr T_PV
10
11 object * T_CF_OBJ
12 partylist * T_CF_OBJ
13 archetype * T_CF_OBJ
14 maptile * T_CF_OBJ
15 struct region * T_CF_OBJ
16 region * T_CF_OBJ
17 client * T_CF_OBJ
18 player * T_CF_OBJ
19 living * T_CF_OBJ
20 attachable * T_CF_OBJ
21 treasurelist * T_CF_OBJ
22 std::string T_CF_OBJ
23 const std::string T_CF_OBJ
24
25 object_thawer * T_CF_OBJ
26 object_freezer * T_CF_OBJ
27
28 Settings * T_SETTINGS
29
30 object_ornull * T_CF_OBJ_ORNULL
31 mapstruct_ornull * T_CF_OBJ_ORNULL
32 octet_string T_CF_OCTETS
33 utf8_string T_CF_UTF8
34 const_octet_string T_CF_OCTETS
35 const_utf8_string T_CF_UTF8
36
37 INPUT
38
39 T_VAL64
40 $var = ($type)SvVAL64 ($arg);
41
42 T_CF_OBJ
43 sv_to ($arg, $var);
44 if (!$var)
45 warn (\"must not pass invalid/null cf_obj here\");
46
47 T_CF_OBJ_ORNULL
48 if (SvOK ($arg))
49 sv_to ($arg, $var);
50 else
51 $var = 0;
52
53 T_SETTINGS
54 $var = &settings
55
56 T_CF_OCTETS
57 $var = SvPVbyte_nolen ($arg)
58
59 T_CF_UTF8
60 $var = SvPVutf8_nolen ($arg)
61
62 OUTPUT
63
64 T_VAL64
65 $arg = newSVval64 ($var);
66
67 T_CF_OBJ_NORNULL
68 $arg = to_sv ($var);
69
70 T_CF_OBJ
71 $arg = to_sv ($var);
72
73 T_CF_OCTETS
74 $arg = $var ? newSVpv ($var, 0) : &PL_sv_undef;
75
76 T_CF_UTF8
77 if ($var)
78 {
79 sv_setpv ($arg, $var);
80 SvUTF8_on ($arg);
81 }
82