inputdata.h (ragel-7.0.0.9) | : | inputdata.h (ragel-7.0.0.10) | ||
---|---|---|---|---|
/* | /* | |||
* Copyright 2008 Adrian Thurston <thurston@complang.org> | * Copyright 2008 Adrian Thurston <thurston@colm.net> | |||
*/ | ||||
/* This file is part of Ragel. | ||||
* | * | |||
* Ragel is free software; you can redistribute it and/or modify | * Permission is hereby granted, free of charge, to any person obtaining a copy | |||
* it under the terms of the GNU General Public License as published by | * of this software and associated documentation files (the "Software"), to | |||
* the Free Software Foundation; either version 2 of the License, or | * deal in the Software without restriction, including without limitation the | |||
* (at your option) any later version. | * 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 | ||||
* furnished to do so, subject to the following conditions: | ||||
* | * | |||
* Ragel is distributed in the hope that it will be useful, | * The above copyright notice and this permission notice shall be included in al | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | l | |||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | * copies or substantial portions of the Software. | |||
* GNU General Public License for more details. | ||||
* | * | |||
* You should have received a copy of the GNU General Public License | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |||
* along with Ragel; if not, write to the Free Software | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | |||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
* 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 | ||||
* SOFTWARE. | ||||
*/ | */ | |||
#ifndef _INPUT_DATA | #ifndef _INPUT_DATA | |||
#define _INPUT_DATA | #define _INPUT_DATA | |||
#include "gendata.h" | #include "gendata.h" | |||
#include <iostream> | #include <iostream> | |||
#include <sstream> | #include <sstream> | |||
#include <vector> | #include <vector> | |||
skipping to change at line 166 | skipping to change at line 167 | |||
const FnMachine &getKey() | const FnMachine &getKey() | |||
{ return key; } | { return key; } | |||
std::string foundFileName; | std::string foundFileName; | |||
char *data; | char *data; | |||
int len; | int len; | |||
}; | }; | |||
typedef AvlTree<IncludeRec, FnMachine, CmpFnMachine> IncludeDict; | ||||
struct InputData | struct InputData | |||
: | : | |||
public FsmGbl | public FsmGbl | |||
{ | { | |||
InputData() | InputData() | |||
: | : | |||
inputFileName(0), | inputFileName(0), | |||
outputFileName(0), | outputFileName(0), | |||
commFileName(0), | commFileName(0), | |||
nextMachineId(0), | nextMachineId(0), | |||
skipping to change at line 196 | skipping to change at line 195 | |||
machineSpec(0), | machineSpec(0), | |||
machineName(0), | machineName(0), | |||
generateDot(false), | generateDot(false), | |||
noLineDirectives(false), | noLineDirectives(false), | |||
maxTransitions(LONG_MAX), | maxTransitions(LONG_MAX), | |||
numSplitPartitions(0), | numSplitPartitions(0), | |||
rubyImpl(MRI), | rubyImpl(MRI), | |||
rlhcShowCmd(false), | rlhcShowCmd(false), | |||
noIntermediate(false), | noIntermediate(false), | |||
frontendSpecified(false), | frontendSpecified(false), | |||
backendSpecified(false), | ||||
featureSpecified(false), | ||||
saveTemps(false), | saveTemps(false), | |||
condsCheckDepth(-1), | condsCheckDepth(-1), | |||
transSpanDepth(6), | transSpanDepth(6), | |||
stateLimit(0), | stateLimit(0), | |||
checkBreadth(0), | checkBreadth(0), | |||
varBackend(false), | varBackend(false), | |||
histogramFn(0), | histogramFn(0), | |||
histogram(0), | histogram(0), | |||
input(0), | input(0), | |||
forceLibRagel(false) | forceLibRagel(false) | |||
skipping to change at line 283 | skipping to change at line 280 | |||
/* Target ruby impl */ | /* Target ruby impl */ | |||
RubyImplEnum rubyImpl; | RubyImplEnum rubyImpl; | |||
bool rlhcShowCmd; | bool rlhcShowCmd; | |||
bool noIntermediate; | bool noIntermediate; | |||
bool frontendSpecified; | bool frontendSpecified; | |||
RagelFrontend frontend; | RagelFrontend frontend; | |||
bool backendSpecified; | ||||
bool featureSpecified; | ||||
bool saveTemps; | bool saveTemps; | |||
long condsCheckDepth; | long condsCheckDepth; | |||
long transSpanDepth; | long transSpanDepth; | |||
long stateLimit; | long stateLimit; | |||
bool checkBreadth; | bool checkBreadth; | |||
bool varBackend; | bool varBackend; | |||
IncludeDict includeDict; | ||||
const char *histogramFn; | const char *histogramFn; | |||
double *histogram; | double *histogram; | |||
const char *input; | const char *input; | |||
Vector<const char**> streamFileNames; | Vector<const char**> streamFileNames; | |||
void verifyWriteHasData( InputItem *ii ); | void verifyWriteHasData( InputItem *ii ); | |||
void verifyWritesHaveData(); | void verifyWritesHaveData(); | |||
skipping to change at line 319 | skipping to change at line 310 | |||
void makeFirstInputItem(); | void makeFirstInputItem(); | |||
void writeOutput(); | void writeOutput(); | |||
void makeDefaultFileName(); | void makeDefaultFileName(); | |||
void createOutputStream(); | void createOutputStream(); | |||
void openOutput(); | void openOutput(); | |||
void closeOutput(); | void closeOutput(); | |||
void generateReduced(); | void generateReduced(); | |||
void prepareSingleMachine(); | void prepareSingleMachine(); | |||
void prepareAllMachines(); | void prepareAllMachines(); | |||
void cdDefaultFileName( const char *inputFile ); | void cDefaultFileName( const char *inputFile ); | |||
void goDefaultFileName( const char *inputFile ); | ||||
void javaDefaultFileName( const char *inputFile ); | ||||
void rubyDefaultFileName( const char *inputFile ); | ||||
void csharpDefaultFileName( const char *inputFile ); | ||||
void ocamlDefaultFileName( const char *inputFile ); | ||||
void crackDefaultFileName( const char *inputFile ); | ||||
void asmDefaultFileName( const char *inputFile ); | void asmDefaultFileName( const char *inputFile ); | |||
void rustDefaultFileName( const char *inputFile ); | ||||
void juliaDefaultFileName( const char *inputFile ); | ||||
void jsDefaultFileName( const char *inputFile ); | ||||
void writeOutput( InputItem *ii ); | void writeOutput( InputItem *ii ); | |||
void writeLanguage( std::ostream &out ); | void writeLanguage( std::ostream &out ); | |||
bool checkLastRef( InputItem *ii ); | bool checkLastRef( InputItem *ii ); | |||
void parseKelbt(); | void parseKelbt(); | |||
void processDot(); | void processDot(); | |||
void processCode(); | ||||
void processCodeEarly(); | ||||
void writeDot( std::ostream &out ); | void writeDot( std::ostream &out ); | |||
void loadHistogram(); | void loadHistogram(); | |||
void defaultHistogram(); | void defaultHistogram(); | |||
void parseArgs( int argc, const char **argv ); | void parseArgs( int argc, const char **argv ); | |||
void checkArgs(); | void checkArgs(); | |||
void terminateParser( Parser6 *parser ); | void terminateParser( Parser6 *parser ); | |||
void terminateAllParsers(); | void terminateAllParsers(); | |||
End of changes. 11 change blocks. | ||||
37 lines changed or deleted | 18 lines changed or added |