ch15.056_best
来自「Perl Best Practices the source code」· 056_BEST 代码 · 共 51 行
056_BEST
51 行
################################################################################ Code fragment (Recommended) from Chapter 15 of "Perl Best Practices" #### Copyright (c) O'Reilly & Associates, 2005. All Rights Reserved. #### See: http://www.oreilly.com/pub/a/oreilly/ask_tim/2001/codepolicy.html ################################################################################# Standard modules...use strict;use warnings;use IO::Prompt;use Carp;use English qw( -no_match_vars );use Data::Alias;use Readonly;my %rank_of;sub set_rank { my ($self, $new_rank) = @_; # New rank now checked first... $rank_of{ident $self} = _check_rank($new_rank); return;}# Create look-up table of known ranks...Readonly my @KNOWN_RANKS => (# Enlisted... Commissioned... 'Private', 'Lieutenant', 'PFC', 'Captain', 'Corporal', 'Colonel', 'Sergeant', 'General', # etc. etc.);Readonly my %IS_KNOWN_RANK => map { $_ => 1 } @KNOWN_RANKS; # Utility subroutine to vet new "rank" values....sub _check_rank { my ($rank) = @_; return $rank if $IS_KNOWN_RANK{$rank}; croak "Can't set unknown rank ('$rank')";}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?