"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "src/gotoloop.h" between
ragel-7.0.0.10.tar.gz and ragel-7.0.0.11.tar.gz

About: Ragel compiles executable finite state machines from regular languages (C, C++, Obj-C, C#, D, Java, Go and Ruby). Development version.

gotoloop.h  (ragel-7.0.0.10):gotoloop.h  (ragel-7.0.0.11)
/* /*
* Copyright 2001-2014 Adrian Thurston <thurston@colm.net> * Copyright 2001-2018 Adrian Thurston <thurston@colm.net>
* *
* Permission is hereby granted, free of charge, to any person obtaining a copy * Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to * of this software and associated documentation files (the "Software"), to
* deal in the Software without restriction, including without limitation the * deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the Software is * sell copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions: * furnished to do so, subject to the following conditions:
* *
* The above copyright notice and this permission notice shall be included in al l * The above copyright notice and this permission notice shall be included in al l
* copies or substantial portions of the Software. * copies or substantial portions of the Software.
* *
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE. * SOFTWARE.
*/ */
#ifndef _GOTOLOOP_H #ifndef SWITCH_GOTO_LOOP_H
#define _GOTOLOOP_H #define SWITCH_GOTO_LOOP_H
#include <iostream> #include <iostream>
#include "goto.h" #include "goto.h"
/* Forwards. */ /* Forwards. */
struct CodeGenData; struct CodeGenData;
struct NameInst; struct NameInst;
struct RedTransAp; struct RedTransAp;
struct RedStateAp; struct RedStateAp;
struct GenStateCond; struct GenStateCond;
class SwitchLoopGoto class SwitchGotoLoop
: public Goto : public Goto
{ {
public: public:
SwitchLoopGoto( const CodeGenArgs &args ) SwitchGotoLoop( const CodeGenArgs &args )
: Goto(args) {} : Goto(args, Loop) {}
void tableDataPass(); virtual std::ostream &ACTION_SWITCH();
virtual std::ostream &EXEC_FUNCS();
std::ostream &ACTION_SWITCH(); virtual std::ostream &TO_STATE_ACTION_SWITCH();
std::ostream &EXEC_FUNCS(); virtual std::ostream &FROM_STATE_ACTION_SWITCH();
std::ostream &TO_STATE_ACTION_SWITCH(); virtual std::ostream &EOF_ACTION_SWITCH();
std::ostream &FROM_STATE_ACTION_SWITCH();
std::ostream &EOF_ACTION_SWITCH();
virtual void NFA_PUSH_ACTION( RedNfaTarg *targ ); virtual void NFA_PUSH_ACTION( RedNfaTarg *targ );
virtual void NFA_POP_TEST( RedNfaTarg *targ ); virtual void NFA_POP_TEST( RedNfaTarg *targ );
virtual void NFA_FROM_STATE_ACTION_EXEC(); virtual void NFA_FROM_STATE_ACTION_EXEC();
/* Interface. */ virtual void FROM_STATE_ACTIONS();
virtual void genAnalysis(); virtual void TO_STATE_ACTIONS();
virtual void writeData(); virtual void REG_ACTIONS();
virtual void writeExec(); virtual void EOF_ACTIONS();
}; };
namespace C namespace C
{ {
class SwitchLoopGoto class SwitchGotoLoop
: :
public ::SwitchLoopGoto public ::SwitchGotoLoop
{ {
public: public:
SwitchLoopGoto( const CodeGenArgs &args ) SwitchGotoLoop( const CodeGenArgs &args )
: ::SwitchLoopGoto( args ) : ::SwitchGotoLoop( args )
{} {}
}; };
} }
#endif #endif
 End of changes. 9 change blocks. 
21 lines changed or deleted 19 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)