Need to fix loading file bug
This commit is contained in:
parent
6f07a4d604
commit
eb2b53569c
@ -147,6 +147,7 @@
|
||||
<ClCompile Include="codes.cpp" />
|
||||
<ClCompile Include="DMS.cpp" />
|
||||
<ClCompile Include="dms_state.cpp" />
|
||||
<ClCompile Include="LineParserBuilds.cpp" />
|
||||
<ClCompile Include="LineParserMatchProcess.cpp" />
|
||||
<ClCompile Include="LineParserParse.cpp" />
|
||||
<ClCompile Include="string_utils.cpp" />
|
||||
|
||||
@ -60,6 +60,9 @@
|
||||
<ClCompile Include="LineParserUtils.cpp">
|
||||
<Filter>Source Files\DMS</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="LineParserBuilds.cpp">
|
||||
<Filter>Source Files\DMS</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="value.h">
|
||||
|
||||
@ -1,2 +1,9 @@
|
||||
LineParserParse.cpp
|
||||
DMS.cpp
|
||||
LineParserBuilds.cpp
|
||||
LineParserMatchProcess.cpp
|
||||
LineParserParse.cpp
|
||||
LineParserUtils.cpp
|
||||
chunk.cpp
|
||||
dms_state.cpp
|
||||
Generating Code...
|
||||
DMS.vcxproj -> F:\VSCWorkspace\DMS\Debug\DMS.exe
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -66,9 +66,13 @@ namespace dms {
|
||||
bool match_process_goto(tokenstream* stream);
|
||||
bool match_process_jump(tokenstream* stream);
|
||||
bool match_process_exit(tokenstream* stream);
|
||||
bool match_process_label(tokenstream* stream);
|
||||
bool match_process_expression(tokenstream* stream, value* v);
|
||||
bool match_process_IFFF(tokenstream* stream);
|
||||
// Build
|
||||
void buildGoto(std::string g, bool v = false);
|
||||
void buildNoop();
|
||||
void buildLabel(std::string l);
|
||||
|
||||
// Utils
|
||||
bool createBlock(std::string bk_name, blocktype bk_type);
|
||||
|
||||
|
||||
26
DMS/LineParserBuilds.cpp
Normal file
26
DMS/LineParserBuilds.cpp
Normal file
@ -0,0 +1,26 @@
|
||||
#include "LineParser.h"
|
||||
namespace dms {
|
||||
void LineParser::buildGoto(std::string g, bool v) {
|
||||
cmd* c = new cmd;
|
||||
c->opcode = codes::GOTO;
|
||||
if (v) {
|
||||
c->args.push(buildVariable(g));
|
||||
}
|
||||
else {
|
||||
c->args.push(buildValue(g));
|
||||
}
|
||||
current_chunk->addCmd(c);
|
||||
}
|
||||
void LineParser::buildNoop() {
|
||||
cmd* c = new cmd;
|
||||
c->opcode = codes::NOOP;
|
||||
current_chunk->addCmd(c);
|
||||
}
|
||||
void LineParser::buildLabel(std::string l) {
|
||||
cmd* c = new cmd;
|
||||
c->opcode = codes::LABL;
|
||||
c->args.push(buildValue(l));
|
||||
current_chunk->addCmd(c);
|
||||
current_chunk->addLabel(l);
|
||||
}
|
||||
}
|
||||
@ -75,7 +75,6 @@ namespace dms {
|
||||
print(stream->peek());
|
||||
stream->next();
|
||||
std::string prompt = stream->next().name;
|
||||
print("Prompt: ", prompt);
|
||||
bool good = true;
|
||||
std::string option;
|
||||
cmd* c = new cmd;
|
||||
@ -116,18 +115,8 @@ namespace dms {
|
||||
The NOOP ensures the pattern stays.
|
||||
If we are provided with a number greater than 3 then we can push an execption.
|
||||
*/
|
||||
std::string str = concat("$",stream->peek().line_num);
|
||||
while (!stream->match(tokens::cbracketc)) {
|
||||
// We need to match the possible options for a choice block
|
||||
/*
|
||||
"option" function()
|
||||
"option" goto ""
|
||||
"option" goto var
|
||||
"option" jump ""
|
||||
"option" jump var
|
||||
"option" exit [0]
|
||||
|
||||
Exit takes an optional int
|
||||
*/
|
||||
if (stream->match(tokens::cbracketo) && !start) {
|
||||
start = true;
|
||||
stream->next();
|
||||
@ -137,31 +126,32 @@ namespace dms {
|
||||
}
|
||||
else if (stream->match(tokens::string)) {
|
||||
std::string name = stream->next().name;
|
||||
print("Option: ", name);
|
||||
c->args.push(buildValue(name)); // We append the choice to the first part of the CHOI cmd
|
||||
|
||||
// We consumed the option now lets do some matching, note that all of these are one liners in the bytecode!
|
||||
if (match_process_function(stream,nullptr,false)) { // No returns and also no nesting of functions!
|
||||
// We collect
|
||||
// We cannot have a nested function here, but if we dont have that then we add our goto
|
||||
buildGoto(str);
|
||||
}
|
||||
else if (match_process_goto(stream)) {
|
||||
current_chunk->addCmd(new cmd{codes::NOOP }); // Add noop to post-goto command
|
||||
buildNoop(); // Add noop to post-goto command
|
||||
}
|
||||
else if (match_process_jump(stream)) {
|
||||
current_chunk->addCmd(new cmd{ codes::NOOP }); // Add noop to post-jump command
|
||||
buildNoop(); // Add noop to post-jump command
|
||||
}
|
||||
else if (match_process_exit(stream)) {
|
||||
current_chunk->addCmd(new cmd{ codes::NOOP }); // Add noop to post-exit command
|
||||
buildNoop(); // Add noop to post-exit command
|
||||
}
|
||||
}
|
||||
// Last Match
|
||||
else if (stream->match(tokens::newline)) {
|
||||
stream->next(); // Consume
|
||||
}
|
||||
else if (!stream->match(tokens::cbracketc)) {
|
||||
else {
|
||||
state->push_error(errors::error{ errors::choice_unknown,concat("Unexpected symbol ",stream->next()),true,stream->peek().line_num,current_chunk });
|
||||
}
|
||||
}
|
||||
buildLabel(str);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@ -217,7 +207,6 @@ namespace dms {
|
||||
cmd* c = new cmd;
|
||||
c->opcode = codes::FUNC;
|
||||
std::string n = stream->next().name;
|
||||
print("FUNC ",n);
|
||||
c->args.push(buildVariable(n)); // Set the func identifier as the first variable
|
||||
// Let's set the target
|
||||
if (v != nullptr) {
|
||||
@ -271,11 +260,10 @@ namespace dms {
|
||||
}
|
||||
// Final match this could be a function it might also be an expression
|
||||
else if (match_process_function(&tempstream, tempval)) {
|
||||
/*if (!nested) {
|
||||
if (!nested) {
|
||||
print("No nested!");
|
||||
state->push_error(errors::error{ errors::nested_function,"Nested functions are not allowed in this context!",true, tempstream.peek().line_num });
|
||||
}*/
|
||||
print("Nested ok!");
|
||||
}
|
||||
c->args.push(tempval);
|
||||
}
|
||||
else if (tempstream.match(tokens::name)) {
|
||||
@ -302,16 +290,13 @@ namespace dms {
|
||||
}
|
||||
bool LineParser::match_process_goto(tokenstream* stream) {
|
||||
if (stream->match(tokens::gotoo,tokens::name) || tokens::gotoo,tokens::string) {
|
||||
cmd* c = new cmd;
|
||||
c->opcode = codes::GOTO;
|
||||
stream->next(); // consume gotoo
|
||||
if (stream->match(tokens::name)) {
|
||||
c->args.push(buildVariable(stream->next().name));
|
||||
buildGoto(stream->next().name,true);
|
||||
}
|
||||
else {
|
||||
c->args.push(buildValue(stream->next().name));
|
||||
buildGoto(stream->next().name);
|
||||
}
|
||||
current_chunk->addCmd(c);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@ -349,21 +334,6 @@ namespace dms {
|
||||
}
|
||||
return false;
|
||||
}
|
||||
bool LineParser::match_process_label(tokenstream* stream) {
|
||||
if (stream->match(tokens::colon, tokens::colon, tokens::name, tokens::colon, tokens::colon)) {
|
||||
cmd* c = new cmd;
|
||||
c->opcode = codes::LABL;
|
||||
stream->next();
|
||||
stream->next();
|
||||
std::string str = stream->next().name;
|
||||
c->args.push(buildValue(str));
|
||||
current_chunk->addCmd(c);
|
||||
current_chunk->addLabel(str);
|
||||
stream->next();
|
||||
stream->next();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
bool LineParser::match_process_IFFF(tokenstream* stream) {
|
||||
return false; // TODO finish this
|
||||
}
|
||||
|
||||
@ -15,7 +15,6 @@ namespace dms {
|
||||
return Parse(state, fn);
|
||||
}
|
||||
dms_state* dms::LineParser::Parse(dms_state* state, std::string file) {
|
||||
std::unordered_map<std::string, chunk> chunks;
|
||||
std::vector<token> t_vec;
|
||||
std::string li;
|
||||
std::ifstream myfile(file);
|
||||
@ -304,7 +303,7 @@ namespace dms {
|
||||
void LineParser::_Parse(tokenstream stream) {
|
||||
token current = stream.next();
|
||||
while (stream.peek().type != tokens::eof) {
|
||||
print(current);
|
||||
//print(current);
|
||||
if (current.type == tokens::flag) {
|
||||
temp = stream.next(tokens::newline);
|
||||
stream.prev(); // Unconsume the newline piece
|
||||
@ -421,7 +420,10 @@ namespace dms {
|
||||
|
||||
// Displays both with a target and without
|
||||
match_process_disp(&stream); // Match and process displays
|
||||
match_process_label(&stream); // Match and process labels
|
||||
if (stream.match(tokens::newline,tokens::label)) { // Match and process labels
|
||||
stream.next();
|
||||
buildLabel(stream.next().name);
|
||||
}
|
||||
match_process_debug(&stream);
|
||||
|
||||
//if (current.type != tokens::tab) // Old code for an old system...
|
||||
|
||||
@ -15,7 +15,7 @@ namespace dms {
|
||||
return false;
|
||||
}
|
||||
void dms_state::dump(errors::error err) {
|
||||
std::cout << "Number of chunks: " << chunks.size();
|
||||
std::cout << std::endl << "STATE DUMP" << std::endl << "Number of chunks: " << chunks.size();
|
||||
std::ofstream outputFile("dump.bin");
|
||||
for (const auto& [key, val] : chunks) {
|
||||
std::cout << "Key: " << key << " Value: " << *val << '\n';
|
||||
|
||||
346
DMS/dump.txt
346
DMS/dump.txt
@ -1,314 +1,70 @@
|
||||
Token Dump:
|
||||
Line <4294967295>NOOP newline
|
||||
Line <0>NOOP newline
|
||||
Line <1>ENTR flag
|
||||
Line <1>NOOP name main
|
||||
Line <1>NOOP bracketo
|
||||
Line <1>NOOP name default
|
||||
Line <1>NOOP colon
|
||||
Line <1>NOOP name char
|
||||
Line <1>NOOP bracketc
|
||||
Line <1>NOOP newline
|
||||
Line <2>ENAB flag
|
||||
Line <2>NOOP name warnings
|
||||
Line <2>NOOP newline
|
||||
Line <3>DISA flag
|
||||
Line <3>NOOP name omniscient
|
||||
Line <3>NOOP name money
|
||||
Line <3>NOOP equal
|
||||
Line <3>NOOP number 0
|
||||
Line <3>NOOP newline
|
||||
Line <4>NOOP newline
|
||||
Line <5>NOOP bracketo
|
||||
Line <5>NOOP name Ryan
|
||||
Line <5>NOOP colon
|
||||
Line <5>NOOP name char
|
||||
Line <5>NOOP bracketc
|
||||
Line <5>NOOP newline
|
||||
Line <6>VERN flag
|
||||
Line <6>NOOP number 1.2
|
||||
Line <6>NOOP name age
|
||||
Line <6>NOOP equal
|
||||
Line <6>NOOP number 21
|
||||
Line <6>NOOP newline
|
||||
Line <7>USIN flag
|
||||
Line <7>NOOP name extendedDefine
|
||||
Line <7>NOOP name money
|
||||
Line <7>NOOP equal
|
||||
Line <7>NOOP number 1000
|
||||
Line <7>NOOP newline
|
||||
Line <8>NOOP newline
|
||||
Line <9>NOOP name calm
|
||||
Line <9>NOOP colon
|
||||
Line <9>NOOP string ./path/to/file
|
||||
Line <9>NOOP newline
|
||||
Line <10>NOOP bracketo
|
||||
Line <10>NOOP name main
|
||||
Line <10>NOOP bracketc
|
||||
Line <10>NOOP cbracketo
|
||||
Line <10>NOOP name excited
|
||||
Line <10>NOOP colon
|
||||
Line <10>NOOP string ./path/to/file
|
||||
Line <10>NOOP newline
|
||||
Line <11>NOOP name Ryan
|
||||
Line <11>NOOP colon
|
||||
Line <11>NOOP string This works!
|
||||
Line <11>NOOP newline
|
||||
Line <12>NOOP nil
|
||||
Line <12>NOOP string What's up
|
||||
Line <12>NOOP bracketo
|
||||
Line <12>NOOP name step
|
||||
Line <12>NOOP colon
|
||||
Line <12>NOOP name function
|
||||
Line <12>NOOP parao
|
||||
Line <12>NOOP name a
|
||||
Line <12>NOOP seperator
|
||||
Line <12>NOOP name b
|
||||
Line <12>NOOP seperator
|
||||
Line <12>NOOP name c
|
||||
Line <12>NOOP parac
|
||||
Line <12>NOOP bracketc
|
||||
Line <12>NOOP newline
|
||||
Line <13>NOOP name Ryan
|
||||
Line <13>NOOP colon
|
||||
Line <13>NOOP cbracketo
|
||||
Line <13>NOOP string Testing...
|
||||
Line <13>NOOP newline
|
||||
Line <14>NOOP name speed
|
||||
Line <14>NOOP name d
|
||||
Line <14>NOOP equal
|
||||
Line <14>NOOP parao
|
||||
Line <14>NOOP number 100
|
||||
Line <14>NOOP mod
|
||||
Line <14>NOOP plus
|
||||
Line <14>NOOP name b
|
||||
Line <14>NOOP parac
|
||||
Line <14>NOOP divide
|
||||
Line <14>NOOP name c
|
||||
Line <14>NOOP newline
|
||||
Line <14>NOOP name calm
|
||||
Line <14>NOOP string Hello Bob,
|
||||
Line <14>NOOP newline
|
||||
Line <15>NOOP name wait
|
||||
Line <15>NOOP number 0.455
|
||||
Line <15>NOOP name e
|
||||
Line <15>NOOP equal
|
||||
Line <15>NOOP string somestring
|
||||
Line <15>NOOP newline
|
||||
Line <16>NOOP name excited
|
||||
Line <16>NOOP string how are you doing?
|
||||
Line <16>NOOP newline
|
||||
Line <17>NOOP newline
|
||||
Line <18>NOOP cbracketc
|
||||
Line <18>NOOP newline
|
||||
Line <19>NOOP newline
|
||||
Line <20>NOOP name tester
|
||||
Line <20>NOOP equal
|
||||
Line <20>NOOP string Hello
|
||||
Line <20>NOOP newline
|
||||
Line <21>NOOP name food
|
||||
Line <21>NOOP equal
|
||||
Line <21>NOOP number 3
|
||||
Line <21>NOOP newline
|
||||
Line <22>NOOP name a
|
||||
Line <22>NOOP equal
|
||||
Line <22>NOOP name list
|
||||
Line <22>NOOP bracketo
|
||||
Line <22>NOOP number 1
|
||||
Line <22>NOOP bracketc
|
||||
Line <22>NOOP newline
|
||||
Line <23>NOOP newline
|
||||
Line <24>IFFF control
|
||||
Line <24>NOOP name statment
|
||||
Line <24>NOOP cbracketo
|
||||
Line <24>NOOP newline
|
||||
Line <25>NOOP string test
|
||||
Line <25>NOOP newline
|
||||
Line <26>NOOP cbracketc
|
||||
Line <26>ELIF control
|
||||
Line <26>NOOP name statement
|
||||
Line <26>NOOP cbracketo
|
||||
Line <26>NOOP newline
|
||||
Line <27>NOOP string test
|
||||
Line <27>NOOP newline
|
||||
Line <28>NOOP cbracketc
|
||||
Line <28>IFFF control
|
||||
Line <28>NOOP name statement
|
||||
Line <28>NOOP cbracketo
|
||||
Line <28>NOOP newline
|
||||
Line <29>NOOP string test
|
||||
Line <29>NOOP newline
|
||||
Line <30>NOOP string test
|
||||
Line <30>NOOP newline
|
||||
Line <31>IFFF control
|
||||
Line <31>NOOP name statement
|
||||
Line <31>NOOP cbracketo
|
||||
Line <31>NOOP newline
|
||||
Line <32>NOOP string test
|
||||
Line <32>NOOP newline
|
||||
Line <33>NOOP cbracketc
|
||||
Line <33>ELSE control
|
||||
Line <33>NOOP cbracketo
|
||||
Line <33>NOOP newline
|
||||
Line <34>NOOP string test
|
||||
Line <34>NOOP newline
|
||||
Line <35>NOOP cbracketc
|
||||
Line <35>NOOP newline
|
||||
Line <36>NOOP cbracketc
|
||||
Line <36>ELIF control
|
||||
Line <36>NOOP name statement
|
||||
Line <36>NOOP cbracketo
|
||||
Line <36>NOOP newline
|
||||
Line <37>NOOP string test
|
||||
Line <37>NOOP newline
|
||||
Line <38>NOOP cbracketc
|
||||
Line <38>ELSE control
|
||||
Line <38>NOOP cbracketo
|
||||
Line <38>NOOP newline
|
||||
Line <39>NOOP string test
|
||||
Line <39>NOOP newline
|
||||
Line <40>NOOP cbracketc
|
||||
Line <40>NOOP newline
|
||||
Line <41>NOOP newline
|
||||
Line <42>NOOP gotoo
|
||||
Line <42>NOOP string somewhere
|
||||
Line <42>NOOP newline
|
||||
Line <43>NOOP jump
|
||||
Line <43>NOOP string overhere
|
||||
Line <43>NOOP newline
|
||||
Line <44>NOOP newline
|
||||
Line <45>NOOP name hungry
|
||||
Line <45>NOOP equal
|
||||
Line <45>NOOP parao
|
||||
Line <45>NOOP minus
|
||||
Line <45>NOOP number 2
|
||||
Line <45>NOOP plus
|
||||
Line <45>NOOP number 4
|
||||
Line <45>NOOP minus
|
||||
Line <45>NOOP parao
|
||||
Line <45>NOOP parao
|
||||
Line <45>NOOP number 5
|
||||
Line <45>NOOP multiply
|
||||
Line <45>NOOP number 5
|
||||
Line <45>NOOP parac
|
||||
Line <45>NOOP divide
|
||||
Line <45>NOOP name sqrt
|
||||
Line <45>NOOP parao
|
||||
Line <45>NOOP number 144
|
||||
Line <45>NOOP plus
|
||||
Line <45>NOOP number 5
|
||||
Line <45>NOOP parac
|
||||
Line <45>NOOP parac
|
||||
Line <45>NOOP parac
|
||||
Line <45>NOOP pow
|
||||
Line <45>NOOP number 2
|
||||
Line <45>NOOP multiply
|
||||
Line <45>NOOP number 2
|
||||
Line <45>NOOP plus
|
||||
Line <45>NOOP number 2
|
||||
Line <45>NOOP newline
|
||||
Line <46>NOOP name list
|
||||
Line <46>NOOP bracketo
|
||||
Line <46>NOOP number 1
|
||||
Line <46>NOOP bracketc
|
||||
Line <46>NOOP equal
|
||||
Line <46>NOOP string Hello
|
||||
Line <46>NOOP newline
|
||||
Line <47>NOOP name var1
|
||||
Line <47>NOOP number
|
||||
Line <47>NOOP equal
|
||||
Line <47>NOOP name func
|
||||
Line <47>NOOP parao
|
||||
Line <47>NOOP number 1
|
||||
Line <47>NOOP seperator
|
||||
Line <47>NOOP string string
|
||||
Line <47>NOOP seperator
|
||||
Line <47>NOOP number 2
|
||||
Line <47>NOOP plus
|
||||
Line <47>NOOP number 5
|
||||
Line <47>NOOP parac
|
||||
Line <47>NOOP newline
|
||||
Line <48>NOOP name a
|
||||
Line <48>NOOP equal
|
||||
Line <48>NOOP number 100
|
||||
Line <48>NOOP plus
|
||||
Line <48>NOOP name func
|
||||
Line <48>NOOP parao
|
||||
Line <48>NOOP number 1
|
||||
Line <48>NOOP seperator
|
||||
Line <48>NOOP string string
|
||||
Line <48>NOOP seperator
|
||||
Line <48>NOOP number 2
|
||||
Line <48>NOOP plus
|
||||
Line <48>NOOP number 5
|
||||
Line <48>NOOP parac
|
||||
Line <48>NOOP plus
|
||||
Line <48>NOOP number 100
|
||||
Line <48>NOOP newline
|
||||
Line <49>NOOP name func
|
||||
Line <49>NOOP parao
|
||||
Line <49>NOOP number 1
|
||||
Line <49>NOOP seperator
|
||||
Line <49>NOOP string string
|
||||
Line <49>NOOP seperator
|
||||
Line <49>NOOP number 2
|
||||
Line <49>NOOP plus
|
||||
Line <49>NOOP number 5
|
||||
Line <49>NOOP parac
|
||||
Line <49>NOOP newline
|
||||
Line <50>NOOP label label
|
||||
Line <50>NOOP newline
|
||||
Line <51>NOOP newline
|
||||
Line <52>NOOP newline
|
||||
Line <53>CHOI control
|
||||
Line <53>NOOP string Pick one:
|
||||
Line <53>NOOP cbracketo
|
||||
Line <53>NOOP newline
|
||||
Line <54>NOOP string first
|
||||
Line <54>NOOP name func
|
||||
Line <54>NOOP parao
|
||||
Line <54>NOOP number 1
|
||||
Line <54>NOOP seperator
|
||||
Line <54>NOOP number 2
|
||||
Line <54>NOOP seperator
|
||||
Line <54>NOOP number 3
|
||||
Line <54>NOOP parac
|
||||
Line <54>NOOP newline
|
||||
Line <55>NOOP string second
|
||||
Line <55>NOOP name func
|
||||
Line <55>NOOP parao
|
||||
Line <55>NOOP true true
|
||||
Line <55>NOOP seperator
|
||||
Line <55>NOOP false false
|
||||
Line <55>NOOP seperator
|
||||
Line <55>NOOP name func
|
||||
Line <55>NOOP parao
|
||||
Line <55>NOOP string heehee
|
||||
Line <55>NOOP parac
|
||||
Line <55>NOOP parac
|
||||
Line <55>NOOP newline
|
||||
Line <56>NOOP string third
|
||||
Line <56>NOOP name func
|
||||
Line <56>NOOP parao
|
||||
Line <56>NOOP string hehe
|
||||
Line <56>NOOP parac
|
||||
Line <56>NOOP newline
|
||||
Line <57>NOOP string forth
|
||||
Line <57>NOOP name func
|
||||
Line <57>NOOP parao
|
||||
Line <57>NOOP string 1
|
||||
Line <57>NOOP seperator
|
||||
Line <57>NOOP number 2
|
||||
Line <57>NOOP seperator
|
||||
Line <57>NOOP false false
|
||||
Line <57>NOOP parac
|
||||
Line <57>NOOP newline
|
||||
Line <58>NOOP string fifth
|
||||
Line <58>NOOP gotoo
|
||||
Line <58>NOOP string here
|
||||
Line <58>NOOP newline
|
||||
Line <59>NOOP string sixth
|
||||
Line <59>NOOP gotoo
|
||||
Line <59>NOOP name name
|
||||
Line <59>NOOP newline
|
||||
Line <60>NOOP string sevinth
|
||||
Line <60>NOOP jump
|
||||
Line <60>NOOP string there
|
||||
Line <60>NOOP newline
|
||||
Line <61>NOOP string eight
|
||||
Line <61>NOOP jump
|
||||
Line <61>NOOP name name
|
||||
Line <61>NOOP newline
|
||||
Line <62>NOOP string nine
|
||||
Line <62>NOOP name exit
|
||||
Line <62>NOOP newline
|
||||
Line <63>NOOP string ten
|
||||
Line <63>NOOP exit
|
||||
Line <63>NOOP number 0
|
||||
Line <63>NOOP newline
|
||||
Line <64>NOOP cbracketc
|
||||
Line <64>NOOP newline
|
||||
Line <65>NOOP cbracketc
|
||||
Line <65>NOOP newline
|
||||
Line <66>NOOP newline
|
||||
Line <67>NOOP newline
|
||||
Line <68>NOOP newline
|
||||
Line <69>NOOP bracketo
|
||||
Line <69>NOOP name Bob
|
||||
Line <69>NOOP colon
|
||||
Line <69>NOOP name char
|
||||
Line <69>NOOP bracketc
|
||||
Line <69>NOOP newline
|
||||
Line <70>NOOP name age
|
||||
Line <70>NOOP equal
|
||||
Line <70>NOOP number 24
|
||||
Line <70>NOOP newline
|
||||
Line <71>NOOP name money
|
||||
Line <71>NOOP equal
|
||||
Line <71>NOOP number 100
|
||||
Line <71>NOOP newline
|
||||
Line <72>NOOP newline
|
||||
Line <73>NOOP bracketo
|
||||
Line <73>NOOP name newblock
|
||||
Line <73>NOOP colon
|
||||
Line <73>NOOP name function
|
||||
Line <73>NOOP parao
|
||||
Line <73>NOOP parac
|
||||
Line <73>NOOP bracketc
|
||||
Line <73>NOOP newline
|
||||
Line <74>NOOP string Test #2
|
||||
Line <74>NOOP newline
|
||||
Line <75>NOOP string Does it parse this part properly?
|
||||
Line <75>NOOP newline
|
||||
Line <77>NOOP eof
|
||||
Line <16>NOOP name e
|
||||
Line <16>NOOP equal
|
||||
|
||||
@ -2,7 +2,7 @@ entry main
|
||||
enable warnings
|
||||
disable omniscient
|
||||
//enable debugging
|
||||
//loadfile "loadtest.dms"
|
||||
loadfile "loadtest.dms"
|
||||
version 1.2
|
||||
using extendedDefine
|
||||
|
||||
@ -47,12 +47,12 @@ using extendedDefine
|
||||
var1 = func(1,"string", 2+5)
|
||||
a = 100 + func(1,"string", 2+5) + 100
|
||||
func(1,"string", 2+5)
|
||||
::label::
|
||||
::mylabel::
|
||||
//Hello im testing stuff
|
||||
|
||||
CHOICE "Pick one:" {
|
||||
"first" func(1,2,3)
|
||||
"second" func(true,false,func("heehee"))
|
||||
"second" func(true,false)
|
||||
"third" func("hehe")
|
||||
"forth" func("1",2,false)
|
||||
"fifth" goto "here"
|
||||
|
||||
BIN
Debug/DMS.exe
BIN
Debug/DMS.exe
Binary file not shown.
BIN
Debug/DMS.ilk
BIN
Debug/DMS.ilk
Binary file not shown.
BIN
Debug/DMS.pdb
BIN
Debug/DMS.pdb
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user