PHP Objects, Patterns and Practice (3rd edition)
CHAPTER 20 ■ OBJECTS, PATTERNS, PRACTICE Testing Although testing is part of the framework that one applies to a project from th ...
CHAPTER 20 ■ OBJECTS, PATTERNS, PRACTICE Continuous Integration It is not enough to be able to test and build a project; you hav ...
CHAPTER 20 ■ OBJECTS, PATTERNS, PRACTICE There is never enough room or time to cover all the material that one would like. Never ...
CHAPTER 20 ■ OBJECTS, PATTERNS, PRACTICE ...
A P P E N D I X A ■ ■ ■ Bibliography Books Alexander, Christopher, Sara Ishikawa, Murray Silverstein, Max Jacobson, Ingrid Fiksd ...
APPENDIX A ■ BIBLIOGRAPHY Shalloway, Alan, and James R Trott. Design Patterns Explained: A New Perspective on Object-Oriented De ...
APPENDIX A ■ BIBLIOGRAPHY Mailman: http://www.gnu.org/software/mailman/ Martin Fowler: http://www.martinfowler.com/ Memcached: h ...
APPENDIX A ■ BIBLIOGRAPHY ...
A P P E N D I X B ■ ■ ■ A Simple Parser The Interpreter pattern discussed in Chapter 11 does not cover parsing. An interpreter w ...
■Appendix B: A Simple Parser ............................................................................ protected $token = nul ...
APPENDIX B ■ A SIMPLE PARSER // return true if the current token is a word function isWord( ) { return ( $this->token_type == ...
APPENDIX B ■ A SIMPLE PARSER $this->token = $char; $type = self::QUOTE; } else { $type = self::CHAR; $this->token = $char; ...
APPENDIX B ■ A SIMPLE PARSER // word characters private function eatWordChars( $char ) { $val = $char; while ( $this->isWordC ...
APPENDIX B ■ A SIMPLE PARSER return $char; } function getPos() { return $this->r->getPos(); } } class ScannerState { publi ...
APPENDIX B ■ A SIMPLE PARSER As you can see, this is just a simple stack, a convenient noticeboard for parsers to work with. It ...
APPENDIX B ■ A SIMPLE PARSER $reader = new \gi\parse\StringReader( $user_in ); $scanner = new \gi\parse\Scanner( $reader, $conte ...
APPENDIX B ■ A SIMPLE PARSER } else { $this->name = $name; } if ( is_array( $options ) ) { if ( isset( $options[self::GIP_RES ...
APPENDIX B ■ A SIMPLE PARSER function term() { return true; } // private/protected protected function invokeHandler( Scanner $sc ...
APPENDIX B ■ A SIMPLE PARSER method is invoked here. I use handlers to make a successful grammar actually do something, as you w ...
APPENDIX B ■ A SIMPLE PARSER class SequenceParse extends CollectionParse { function trigger( Scanner $scanner ) { if ( empty( $t ...
«
18
19
20
21
22
23
24
25
26
27
»
Free download pdf