ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/include/freezethaw.h
(Generate patch)

Comparing deliantra/server/include/freezethaw.h (file contents):
Revision 1.3 by root, Thu Apr 15 04:56:47 2010 UTC vs.
Revision 1.6 by root, Wed Apr 28 20:51:58 2010 UTC

163 utf8_string as_string (); // like strdup 163 utf8_string as_string (); // like strdup
164 164
165 operator bool () { return !!av; } 165 operator bool () { return !!av; }
166}; 166};
167 167
168// used as dir argument to object_thawer constructor
169#define RESOURCE_DIR const_utf8_string (0)
170
168INTERFACE_CLASS(object_thawer) 171INTERFACE_CLASS(object_thawer)
169struct object_thawer 172struct object_thawer
170{ 173{
174 static bool errors_are_fatal; // true during server startup only
175
171 char *line; // current beginning of line 176 char *line; // current beginning of line
172 SV *text; // text part 177 SV *text; // text part
173 AV *av; // perl part 178 AV *av; // perl part
174 int linenum; 179 int linenum;
175 keyword kw; 180 keyword kw;
179 const char *name; 184 const char *name;
180 185
181 operator bool () const { return !!text; } 186 operator bool () const { return !!text; }
182 187
183 object_thawer (const_utf8_string path = 0); 188 object_thawer (const_utf8_string path = 0);
189 object_thawer (const_utf8_string dir, const_utf8_string file);
184 object_thawer (const_utf8_string data, AV *perlav); 190 object_thawer (const_utf8_string data, AV *perlav);
185 ~object_thawer (); 191 ~object_thawer ();
186 192
187 void get (attachable *obj, int oid); 193 void get (attachable *obj, int oid);
188 194
234 }; 240 };
235 std::vector<delayed_ref> delrefs; 241 std::vector<delayed_ref> delrefs;
236 242
237 void delayed_deref (attachable *op, object_ptr &ptr, const_utf8_string ref); 243 void delayed_deref (attachable *op, object_ptr &ptr, const_utf8_string ref);
238 MTH void resolve_delayed_derefs (bool deref = true); 244 MTH void resolve_delayed_derefs (bool deref = true);
245private:
246 void new_from_path (const_utf8_string path);
239}; 247};
240 248
241#endif 249#endif
242 250

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines