ruco-cpp 0.2.2 → 0.2.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/ruco +3 -2
- data/lib/ruco/version.rb +1 -1
- data/lib/ruco.rb +57 -0
- metadata +11 -11
- /data/data/{ruco → ruco-cpp}/Parser.frame +0 -0
- /data/data/{ruco → ruco-cpp}/Scanner.frame +0 -0
- /data/data/{ruco → ruco-cpp}/picojson/Changes +0 -0
- /data/data/{ruco → ruco-cpp}/picojson/LICENSE +0 -0
- /data/data/{ruco → ruco-cpp}/picojson/Makefile +0 -0
- /data/data/{ruco → ruco-cpp}/picojson/README.mkdn +0 -0
- /data/data/{ruco → ruco-cpp}/picojson/examples/github-issues.cc +0 -0
- /data/data/{ruco → ruco-cpp}/picojson/examples/iostream.cc +0 -0
- /data/data/{ruco → ruco-cpp}/picojson/examples/streaming.cc +0 -0
- /data/data/{ruco → ruco-cpp}/picojson/picojson.h +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8456b33c27c7b0f589ce32b10785f6da9437ae21
|
4
|
+
data.tar.gz: 859c0745003b7c4a2741e4d14daccb1043e9f464
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1ac5de3e243e7882839e3eb1773c86e258c2d129e91354a94fe94c87b3afe274577628d9268ebd788e3b3b9e2410c5999bef470deea7e3c6a66dcfd35f8e909d
|
7
|
+
data.tar.gz: 2ae249b86e0c9d982dc311e5894e246116178a8a6a403d895acc2f93eddecbb18104806a881ebc1ff7cca5cbc9768902b8c70de52963a353bceba09e9fcbd77e
|
data/bin/ruco
CHANGED
@@ -21,10 +21,11 @@ File.write("#{grammar_name}.atg",rr.generate_atg)
|
|
21
21
|
File.write("#{grammar_name}.hpp",rr.generate_header)
|
22
22
|
File.write("parse_#{grammar_name}.cpp",rr.generate_libcpp)
|
23
23
|
File.write("parse_#{grammar_name}.hpp",rr.generate_libhpp)
|
24
|
-
|
24
|
+
File.write("Makefile", rr.generate_makefile) unless File.exists? "Makefile"
|
25
|
+
FileUtils.cp(File.join(Gem.datadir("ruco-cpp"), "picojson", "picojson.h"),"picojson.hpp")
|
25
26
|
|
26
27
|
atg = File.join(Dir.pwd, "#{grammar_name}.atg")
|
27
|
-
datadir = Gem.datadir "ruco"
|
28
|
+
datadir = Gem.datadir "ruco-cpp"
|
28
29
|
puts atg
|
29
30
|
|
30
31
|
Cocor.compile atg, datadir, grammar_name.capitalize, "#{Dir.pwd}/"
|
data/lib/ruco/version.rb
CHANGED
data/lib/ruco.rb
CHANGED
@@ -620,6 +620,63 @@ namespace #{@name}
|
|
620
620
|
CPPCONTENT
|
621
621
|
end
|
622
622
|
|
623
|
+
def generate_makefile
|
624
|
+
<<-MAKEFILEEND
|
625
|
+
V = 0
|
626
|
+
AT_0 := @
|
627
|
+
AT_1 :=
|
628
|
+
REDIR_0 := > /dev/null
|
629
|
+
REDIR_1 :=
|
630
|
+
AT = $(AT_$(V))
|
631
|
+
REDIR = $(REDIR_$(V))
|
632
|
+
|
633
|
+
CXXFLAGS=-g -Wall -std=gnu++11
|
634
|
+
|
635
|
+
LDFLAGS=
|
636
|
+
TARGET=#{@name.downcase}_parse
|
637
|
+
SRCDIR=.
|
638
|
+
SRC=$(shell find $(SRCDIR) -name "*.cpp")
|
639
|
+
OUT=obj
|
640
|
+
OBJS=$(SRC:%.cpp=$(OUT)/%.o)
|
641
|
+
DEPS=$(SRC:%.cpp=$(OUT)/%.d)
|
642
|
+
NODEPS=clean
|
643
|
+
|
644
|
+
.PHONY = all clean
|
645
|
+
|
646
|
+
.SECONDEXPANSION:
|
647
|
+
|
648
|
+
all: $(TARGET)
|
649
|
+
$(AT)echo "Build complete"
|
650
|
+
|
651
|
+
clean:
|
652
|
+
$(AT)-rm -rf $(TARGET) $(OUT)
|
653
|
+
|
654
|
+
ifeq (0, $(words $(findstring $(MAKECMDGOALS), $(NODEPS))))
|
655
|
+
-include $(DEPS)
|
656
|
+
endif
|
657
|
+
|
658
|
+
$(TARGET): $(OBJS) $(LUA)
|
659
|
+
$(AT)echo [LINK] $@
|
660
|
+
$(AT)$(CXX) $(CXXFLAGS) $^ $(LDFLAGS) -o $@
|
661
|
+
|
662
|
+
%/.f:
|
663
|
+
$(AT)echo [MKDIR] $(dir $@)
|
664
|
+
$(AT)mkdir -p $(dir $@)
|
665
|
+
$(AT)touch $@
|
666
|
+
|
667
|
+
$(OUT)/%.d:%.cpp $$(@D)/.f
|
668
|
+
$(AT)echo [DEP] $<
|
669
|
+
$(AT)$(CXX) $(CXXFLAGS) -MM -MT '$(patsubst %.d,%.o,$@)' $< -MF $@
|
670
|
+
|
671
|
+
$(OUT)/%.o:%.cpp $(OUT)/%.d
|
672
|
+
$(AT)echo [C++] $<
|
673
|
+
$(AT)$(CXX) $< $(CXXFLAGS) -c -o $@
|
674
|
+
|
675
|
+
.PRECIOUS: %/.f
|
676
|
+
|
677
|
+
MAKEFILEEND
|
678
|
+
end
|
679
|
+
|
623
680
|
def generate_atg()
|
624
681
|
|
625
682
|
productionlist = []
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruco-cpp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Siaw
|
@@ -93,16 +93,16 @@ files:
|
|
93
93
|
- bin/console
|
94
94
|
- bin/ruco
|
95
95
|
- bin/setup
|
96
|
-
- data/ruco/Parser.frame
|
97
|
-
- data/ruco/Scanner.frame
|
98
|
-
- data/ruco/picojson/Changes
|
99
|
-
- data/ruco/picojson/LICENSE
|
100
|
-
- data/ruco/picojson/Makefile
|
101
|
-
- data/ruco/picojson/README.mkdn
|
102
|
-
- data/ruco/picojson/examples/github-issues.cc
|
103
|
-
- data/ruco/picojson/examples/iostream.cc
|
104
|
-
- data/ruco/picojson/examples/streaming.cc
|
105
|
-
- data/ruco/picojson/picojson.h
|
96
|
+
- data/ruco-cpp/Parser.frame
|
97
|
+
- data/ruco-cpp/Scanner.frame
|
98
|
+
- data/ruco-cpp/picojson/Changes
|
99
|
+
- data/ruco-cpp/picojson/LICENSE
|
100
|
+
- data/ruco-cpp/picojson/Makefile
|
101
|
+
- data/ruco-cpp/picojson/README.mkdn
|
102
|
+
- data/ruco-cpp/picojson/examples/github-issues.cc
|
103
|
+
- data/ruco-cpp/picojson/examples/iostream.cc
|
104
|
+
- data/ruco-cpp/picojson/examples/streaming.cc
|
105
|
+
- data/ruco-cpp/picojson/picojson.h
|
106
106
|
- ext/cocor/Action.cpp
|
107
107
|
- ext/cocor/Action.h
|
108
108
|
- ext/cocor/ArrayList.cpp
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|