⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 appclass.sm

📁 SMC takes a state machine stored in a .sm file and generates a State pattern in twelve programming l
💻 SM
字号:
// -*- tab-width: 4; -*-//// The contents of this file are subject to the Mozilla Public// License Version 1.1 (the "License"); you may not use this file// except in compliance with the License. You may obtain a copy// of the License at http://www.mozilla.org/MPL///// Software distributed under the License is distributed on an// "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or// implied. See the License for the specific language governing// rights and limitations under the License.//// The Original Code is State Machine Compiler (SMC).//// The Initial Developer of the Original Code is Charles W. Rapp.// Portions created by Charles W. Rapp are// Copyright (C) 2000 - 2003 Charles W. Rapp.// All Rights Reserved.//// Contributor(s)://      Port to C by Francois Perrad, francois.perrad@gadz.org//// State Map//  This state map is recognizes the regular expression wcw(r) or//  palindromes.//// RCS ID// $Id: AppClass.sm,v 1.2 2007/08/05 13:41:14 cwrapp Exp $//// CHANGE LOG// $Log: AppClass.sm,v $// Revision 1.2  2007/08/05 13:41:14  cwrapp// Version 5.0.1 check-in. See net/sf/smc/CODE_README.txt for more information.//// Revision 1.1  2005/06/16 18:00:35  fperrad// Added C examples 1 - 4////%start StartMap::PushIt%class AppClass%header AppClass.h%map ZerosMap%%// State    Transition  End State       Action(s)PushIt{            Zero        push(PushIt)        {}            One         push(OnesMap::PushIt)  {}            C           PopIt              {}            OK          PopIt              {}            Error       StartMap::Unacceptable {emptyStateStack();}}PopIt{            Zero        pop(OK)         {}            Default     pop(Error)      {}}Default{            EOS         StartMap::Unacceptable                                        {                                            emptyStateStack();                                            Unacceptable();                                        }            Unknown     StartMap::Unacceptable {}}%%%map OnesMap%%// State    Transition  End State       Action(s)PushIt{            Zero        push(ZerosMap::PushIt)  {}            One         push(PushIt)        {}            C           PopIt              {}            OK          PopIt              {}            Error       StartMap::Unacceptable {emptyStateStack();}}PopIt{            One         pop(OK)         {}            Default     pop(Error)      {}}Default{            EOS         StartMap::Unacceptable                                        {                                            emptyStateStack();                                            Unacceptable();                                        }            Unknown     StartMap::Unacceptable {}}%%%map StartMap%%// State    Transition  End State       Action(s)PushIt{            Zero        push(ZerosMap::PushIt)  {}            One         push(OnesMap::PushIt)  {}            C           PopIt              {}            OK          PopIt              {}            Error       Unacceptable    {}}PopIt{            EOS         Acceptable      {Acceptable();}            Default     Unacceptable    {}}Acceptable{}Unacceptable{            Default     nil             {}}Default{            EOS         Unacceptable    {Unacceptable();}            Unknown     Unacceptable    {}}%%

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -