Merge lp:~vytng/cfg-to-pda/init-classes into lp:cfg-to-pda

Proposed by Vy Thuy Nguyen
Status: Merged
Merged at revision: 4
Proposed branch: lp:~vytng/cfg-to-pda/init-classes
Merge into: lp:cfg-to-pda
Diff against target: 116 lines (+92/-0)
4 files modified
src/main/java/api/Language.java (+20/-0)
src/main/java/api/Machine.java (+9/-0)
src/main/java/cfgpda/Cfg.java (+47/-0)
src/main/java/cfgpda/Pda.java (+16/-0)
To merge this branch: bzr merge lp:~vytng/cfg-to-pda/init-classes
Reviewer Review Type Date Requested Status
Vy Thuy Nguyen Pending
Review via email: mp+130281@code.launchpad.net
To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added directory 'src/main/java/api'
2=== added file 'src/main/java/api/Language.java'
3--- src/main/java/api/Language.java 1970-01-01 00:00:00 +0000
4+++ src/main/java/api/Language.java 2012-10-18 04:57:20 +0000
5@@ -0,0 +1,20 @@
6+package api;
7+
8+/**
9+ *
10+ * @author VyThuyNguyen
11+ */
12+public interface Language
13+{
14+ /**
15+ *
16+ * @return a string of the language
17+ */
18+ String sampleString();
19+
20+ /**
21+ *
22+ * @return a machine that recognizes the language
23+ */
24+ Machine getMachine();
25+}
26\ No newline at end of file
27
28=== added file 'src/main/java/api/Machine.java'
29--- src/main/java/api/Machine.java 1970-01-01 00:00:00 +0000
30+++ src/main/java/api/Machine.java 2012-10-18 04:57:20 +0000
31@@ -0,0 +1,9 @@
32+package api;
33+
34+/**
35+ *
36+ * @author VyThuyNguyen
37+ */
38+public interface Machine
39+{
40+}
41\ No newline at end of file
42
43=== added directory 'src/main/java/cfgpda'
44=== added file 'src/main/java/cfgpda/Cfg.java'
45--- src/main/java/cfgpda/Cfg.java 1970-01-01 00:00:00 +0000
46+++ src/main/java/cfgpda/Cfg.java 2012-10-18 04:57:20 +0000
47@@ -0,0 +1,47 @@
48+package cfgpda;
49+
50+import api.Language;
51+import java.util.HashSet;
52+import java.util.Set;
53+import sun.reflect.generics.reflectiveObjects.NotImplementedException;
54+
55+/**
56+ *
57+ * @author Vy Thuy Nguyen
58+ */
59+public class Cfg implements Language
60+{
61+ public static final String EPSILON = "e";
62+ private Set<Character> variables;
63+ private Set<Character> terminals;
64+ private Set<Character> rules;
65+ private char startVar;
66+
67+ public Cfg(Set<Character> variables, Set<Character> terminals, Set<Character> rules, char startVar)
68+ {
69+ this.variables = new HashSet<Character>(variables);
70+ this.terminals = new HashSet<Character>(terminals);
71+ this.rules = new HashSet<Character>(rules);
72+ this.startVar = startVar;
73+ }
74+
75+ @Override
76+ public String sampleString()
77+ {
78+ return "test";
79+ }
80+
81+ @Override
82+ public Pda getMachine()
83+ {
84+ return new Pda(this);
85+ }
86+
87+ public Cfg toChomskyNormalForm()
88+ {
89+ throw new NotImplementedException();
90+ }
91+
92+
93+
94+}
95
96=== added file 'src/main/java/cfgpda/Pda.java'
97--- src/main/java/cfgpda/Pda.java 1970-01-01 00:00:00 +0000
98+++ src/main/java/cfgpda/Pda.java 2012-10-18 04:57:20 +0000
99@@ -0,0 +1,16 @@
100+import api.Machine;
101+
102+/**
103+ *
104+ * @author Vy Thuy Nguyen
105+ */
106+public class Pda implements Machine
107+{
108+ private Cfg cfg;
109+
110+ public Pda(Cfg cfg)
111+ {
112+ this.cfg = cfg;
113+ }
114+
115+}
116\ No newline at end of file

Subscribers

People subscribed via source and target branches

to all changes: