/tags/rel-2.0.4/Examples/perl5/variables/runme.pl

# · Perl · 73 lines · 54 code · 16 blank · 3 comment · 2 complexity · 8ad43bd6b511239fc00aa967ece34c50 MD5 · raw file

  1. # file: runme.pl
  2. use example;
  3. # Try to set the values of some global variables
  4. $example::ivar = 42;
  5. $example::svar = -31000;
  6. $example::lvar = 65537;
  7. $example::uivar = 123456;
  8. $example::usvar = 61000;
  9. $example::ulvar = 654321;
  10. $example::scvar = -13;
  11. $example::ucvar = 251;
  12. $example::cvar = "S";
  13. $example::fvar = 3.14159;
  14. $example::dvar = 2.1828;
  15. $example::strvar = "Hello World";
  16. $example::iptrvar= example::new_int(37);
  17. $example::ptptr = example::new_Point(37,42);
  18. $example::name = "Bill";
  19. # Now print out the values of the variables
  20. print "Variables (values printed from Perl)\n";
  21. print "ivar = $example::ivar\n";
  22. print "svar = $example::svar\n";
  23. print "lvar = $example::lvar\n";
  24. print "uivar = $example::uivar\n";
  25. print "usvar = $example::usvar\n";
  26. print "ulvar = $example::ulvar\n";
  27. print "scvar = $example::scvar\n";
  28. print "ucvar = $example::ucvar\n";
  29. print "fvar = $example::fvar\n";
  30. print "dvar = $example::dvar\n";
  31. print "cvar = $example::cvar\n";
  32. print "strvar = $example::strvar\n";
  33. print "cstrvar = $example::cstrvar\n";
  34. print "iptrvar = $example::iptrvar\n";
  35. print "name = $example::name\n";
  36. print "ptptr = $example::ptptr", example::Point_print($example::ptptr), "\n";
  37. print "pt = $example::pt", example::Point_print($example::pt), "\n";
  38. print "\nVariables (values printed from C)\n";
  39. example::print_vars();
  40. print "\nI'm going to try and update a structure variable.\n";
  41. $example::pt = $example::ptptr;
  42. print "The new value is ";
  43. example::pt_print();
  44. print "You should see the value", example::Point_print($example::ptptr), "\n";
  45. print "\nNow I'm going to try and modify some read only variables\n";
  46. print " Trying to set 'status'\n";
  47. eval { $example::status = 0; };
  48. if (!$@) {
  49. die("status");
  50. }
  51. print " get error for 'status'\n";
  52. print " Tring to set 'path'\n";
  53. eval { $example::path = "Whoa!";};
  54. if (!$@) {
  55. die("path");
  56. }
  57. print " get error for 'path'\n";