diff --git a/CoreTest/CoreTest.vcxproj b/CoreTest/CoreTest.vcxproj
index 77d7ee5..e6e36b7 100644
--- a/CoreTest/CoreTest.vcxproj
+++ b/CoreTest/CoreTest.vcxproj
@@ -76,6 +76,10 @@
libWords.lib;libSyntax.lib;%(AdditionalDependencies)
+
+ stdcpp20
+ /utf-8 %(AdditionalOptions)
+
diff --git a/CoreTest/main.cpp b/CoreTest/main.cpp
index 7b681f9..e4783e0 100644
--- a/CoreTest/main.cpp
+++ b/CoreTest/main.cpp
@@ -10,11 +10,11 @@ int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
- QFile in(u8"D:\\Projects\\Cpp\\WsNovelParser\\CoreTest\\syntax_example.txt");
+ QFile in("D:\\Projects\\Cpp\\WsNovelParser\\CoreTest\\syntax_example.txt");
in.open(QIODevice::ReadOnly|QIODevice::Text);
QTextStream tt(&in);
lib_words::WordReader reader;
- auto vwords = reader.wordsFrom(tt, u8"D:\\Projects\\Cpp\\WsNovelParser\\CoreTest\\syntax_example.txt");
+ auto vwords = reader.wordsFrom(tt, "D:\\Projects\\Cpp\\WsNovelParser\\CoreTest\\syntax_example.txt");
auto words = vwords;
while (words) {
@@ -25,7 +25,7 @@ int main(int argc, char *argv[])
ast_gen::SyntaxParser parser(example_novel::NovalSyntax::getSyntaxTree());
auto rst = parser.parse(vwords);
for (auto one : rst) {
- qDebug() << u8"===================================================";
+ qDebug() << "===================================================";
qDebug().noquote() << one->totalErrors();
auto vtoken = one->currentToken();
while (vtoken) {
diff --git a/libSyntax/syntax_novel.cpp b/libSyntax/syntax_novel.cpp
index 4eec808..f62dae7 100644
--- a/libSyntax/syntax_novel.cpp
+++ b/libSyntax/syntax_novel.cpp
@@ -12,7 +12,7 @@ using namespace std;
#include "syntax_templets.h"
using namespace lib_composit;
-void point_nmset(std::shared_ptr inst, std::shared_ptr token) {
+void point_nm_set(std::shared_ptr inst, std::shared_ptr token) {
inst->addToken(token);
inst->setName(token->content());
}
@@ -32,15 +32,15 @@ void slice_nm_set(std::shared_ptr inst, std::shared_ptraddToken(token);
inst->setName(token->content());
}
-void story_nmset(std::shared_ptr inst, std::shared_ptr token) {
+void story_nm_set(std::shared_ptr inst, std::shared_ptr token) {
inst->addToken(token);
inst->setName(token->content());
}
-void article_nset(std::shared_ptrinst, std::shared_ptr token) {
+void article_nm_set(std::shared_ptrinst, std::shared_ptr token) {
inst->addToken(token);
inst->setName(token->content());
}
-void volume_nset(std::shared_ptr inst, std::shared_ptr token) {
+void volume_nm_set(std::shared_ptr inst, std::shared_ptr token) {
inst->addToken(token);
inst->setName(token->content());
}
@@ -49,7 +49,7 @@ void rank_set(std::shared_ptr inst, std::shared_ptrsetRank(token->content().toInt());
}
-using TextDeclsSyntaxDef = lib_composit::Multi, TMate, TMate, TMate>>;
+using TextDeclsSyntaxDef = lib_composit::Multi, TMatch, TMatch, TMatch>>;
class DeclSyntax : public ElementRule {
public:
DeclSyntax() : ElementRule("decl_section") { }
@@ -62,9 +62,9 @@ public:
-using PointSyntaxDef = lib_composit::SeqsR, TMate, TAct,
+using PointSyntaxDef = lib_composit::SeqsR, TMatch, TAct,
Opt,
- TMate>;
+ TMatch>;
class PointSyntax : public ElementRule {
public:
PointSyntax() : ElementRule("point_define") { }
@@ -77,9 +77,9 @@ public:
-using ReferSyntaxDef = lib_composit::SeqsR, TMate, TMate, TAct, TMate, TAct, TMate, TAct,
+using ReferSyntaxDef = lib_composit::SeqsR, TMatch, TMatch, TAct, TMatch, TAct, TMatch, TAct,
Opt,
- TMate>;
+ TMatch>;
class ReferSyntax : public ElementRule {
public:
ReferSyntax() : ElementRule < PointRefers, (int) NovelNode::PointRefers, ReferSyntaxDef>("point_refer") { }
@@ -92,9 +92,9 @@ public:
-using SliceSyntaxDef = lib_composit::SeqsR, TMate, TAct,
+using SliceSyntaxDef = lib_composit::SeqsR, TMatch, TAct,
lib_composit::OptMulti>,
- TMate>;
+ TMatch>;
class SliceSyntax : public ElementRule {
public:
SliceSyntax() : ElementRule("slice_define") { }
@@ -107,9 +107,9 @@ public:
-using StorySyntaxDef = lib_composit::SeqsR, TMate, TAct,
+using StorySyntaxDef = lib_composit::SeqsR, TMatch, TAct,
lib_composit::OptMulti>,
- TMate>;
+ TMatch>;
class StorySyntax : public ElementRule {
public:
StorySyntax() : ElementRule("story_define") { }
@@ -122,9 +122,9 @@ public:
-using ArticleSyntaxDef = lib_composit::SeqsR, TMate, TAct,
+using ArticleSyntaxDef = lib_composit::SeqsR, TMatch, TAct,
lib_composit::OptMulti>,
- TMate>;
+ TMatch>;
class ArticleSyntax : public ElementRule {
public:
ArticleSyntax() : ElementRule("article_define") { }
@@ -137,9 +137,9 @@ public:
-using VolumeSyntaxDef = lib_composit::SeqsR, TMate, TAct,
+using VolumeSyntaxDef = lib_composit::SeqsR, TMatch, TAct,
lib_composit::OptMulti>,
- TMate>;
+ TMatch>;
class VolumeSyntax : public ElementRule {
public:
VolumeSyntax() : ElementRule("volume_define") { }
@@ -152,7 +152,7 @@ public:
-using RankSyntaxDef = lib_composit::SeqsR, TMate, TAct>;
+using RankSyntaxDef = lib_composit::SeqsR, TMatch, TAct>;
class RankSyntax : public ElementRule {
public:
RankSyntax() : ElementRule("rank_define") { }
@@ -218,3 +218,7 @@ public:
// node_register(child, next_child_items);
// }
//}
+
+std::shared_ptr example_novel::NovalSyntax::getSyntaxTree() {
+ return std::shared_ptr();
+}
diff --git a/libSyntax/syntax_templets.h b/libSyntax/syntax_templets.h
index e01730f..13d2a71 100644
--- a/libSyntax/syntax_templets.h
+++ b/libSyntax/syntax_templets.h
@@ -57,7 +57,7 @@ namespace lib_composit {
void apntk(std::shared_ptr expr, std::shared_ptr t) {
expr->addToken(t);
}
- template
- requires std::derived_from&& std::derived_from
- class TMate : public TAct { };
+ template
+ requires std::derived_from
+ class TMatch : public TAct> { };
}