| 401 } |
401 } |
| 402 |
402 |
| 403 static SV * |
403 static SV * |
| 404 purple_perl_sv_from_subtype(const PurpleValue *value, void *arg) |
404 purple_perl_sv_from_subtype(const PurpleValue *value, void *arg) |
| 405 { |
405 { |
| 406 const char *stash = NULL; |
406 const char *stash = "Purple"; /* ? */ |
| 407 |
407 |
| 408 switch (purple_value_get_subtype(value)) { |
408 switch (purple_value_get_subtype(value)) { |
| 409 case PURPLE_SUBTYPE_ACCOUNT: |
409 case PURPLE_SUBTYPE_ACCOUNT: |
| 410 stash = "Purple::Account"; |
410 stash = "Purple::Account"; |
| 411 break; |
411 break; |
| 440 stash = "Purple::Cipher"; |
440 stash = "Purple::Cipher"; |
| 441 break; |
441 break; |
| 442 case PURPLE_SUBTYPE_STATUS: |
442 case PURPLE_SUBTYPE_STATUS: |
| 443 stash = "Purple::Status"; |
443 stash = "Purple::Status"; |
| 444 break; |
444 break; |
| |
445 case PURPLE_SUBTYPE_SAVEDSTATUS: |
| |
446 stash = "Purple::SavedStatus"; |
| |
447 break; |
| 445 case PURPLE_SUBTYPE_LOG: |
448 case PURPLE_SUBTYPE_LOG: |
| 446 stash = "Purple::Log"; |
449 stash = "Purple::Log"; |
| 447 break; |
450 break; |
| 448 case PURPLE_SUBTYPE_XFER: |
451 case PURPLE_SUBTYPE_XFER: |
| 449 stash = "Purple::Xfer"; |
452 stash = "Purple::Xfer"; |
| 450 break; |
453 break; |
| 451 case PURPLE_SUBTYPE_XMLNODE: |
454 case PURPLE_SUBTYPE_XMLNODE: |
| 452 stash = "Purple::XMLNode"; |
455 stash = "Purple::XMLNode"; |
| 453 break; |
456 break; |
| 454 |
457 case PURPLE_SUBTYPE_USERINFO: |
| 455 default: |
458 stash = "Purple::NotifyUserInfo"; |
| 456 stash = "Purple"; /* ? */ |
459 break; |
| 457 } |
460 case PURPLE_SUBTYPE_STORED_IMAGE: |
| |
461 stash = "Purple::StoredImage"; |
| |
462 break; |
| |
463 case PURPLE_SUBTYPE_CERTIFICATEPOOL: |
| |
464 stash = "Purple::Certificate::Pool"; |
| |
465 break; |
| |
466 case PURPLE_SUBTYPE_UNKNOWN: |
| |
467 stash = "Purple::Unknown"; |
| |
468 break; |
| |
469 } |
| 458 |
470 |
| 459 return sv_2mortal(purple_perl_bless_object(arg, stash)); |
471 return sv_2mortal(purple_perl_bless_object(arg, stash)); |
| 460 } |
472 } |
| 461 |
473 |
| 462 SV * |
474 SV * |