typo
Yuval Kogman [Tue, 21 Jul 2009 16:00:57 +0000 (09:00 -0700)]
moose-class/exercises/lib/Person.pm
moose-class/slides/index.html

index 9ec8c1b..3f3fc46 100644 (file)
@@ -1,4 +1,30 @@
 package Person;
 
+use Moose;
+
+use namespace::clean -except => "meta";
+
+has [qw(first_name last_name)] => (
+    is => "rw",
+    required => 1,
+);
+
+sub full_name {
+    my $self = shift;
+    $self->first_name . " " . $self->last_name;
+}
+
+override BUILDARGS => sub {
+    my ( $self, @args ) = @_;
+
+    if ( @args == 1 and ref $args[0] eq 'ARRAY' ) {
+        my %p; @p{qw(first_name last_name)} = @{ $args[0] };
+        return \%p;
+    } else {
+        return super;
+    }
+};
+
+__PACKAGE__->meta->make_immutable;
 
 1;
index 02cc02c..a44f504 100644 (file)
@@ -52,7 +52,8 @@ img#me05 {top: 43px;left: 36px;}
 
 <div class="slide">
   <h1>Introduction to Moose</h1>
-  <h2>YAPC 2009</h2>
+  <h2>OSCON 2009</h2>
+  <h2><a href="git://git.moose.perl.org/moose-presentations.git"><tt>git://git.moose.perl.org/moose-presentations.git</tt></a></h2>
 </div>
 
 <div class="slide">
@@ -940,7 +941,7 @@ sub BUILD {
 </div>
 
 <div class="slide">
-  <h1>The Object is Oqaque</h1>
+  <h1>The Object is Opaque</h1>
 
   <ul>
     <li>Technically it's a hash reference</li>
@@ -1127,6 +1128,7 @@ Person->can('extends');</code></pre>
 
   <ul>
     <li><code>no Moose</code> at the end of a package is a best practice</li>
+    <li>Or <code>namespace::clean</code> at the top</li>
     <li>Just do it</li>
   </ul>
 </div>