aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorChristopher Vogt <oss.nsp@cvogt.org>2017-03-22 10:11:46 -0400
committerChristopher Vogt <oss.nsp@cvogt.org>2017-03-24 11:32:09 -0400
commit758611576a4f6ceb7020e3cee1f70bbd1cc0b4d8 (patch)
tree63befde48bed261a1fbed42543206711818858a3 /examples
parent3d321f42c19d2166204079ba7eece66b36037042 (diff)
downloadcbt-758611576a4f6ceb7020e3cee1f70bbd1cc0b4d8.tar.gz
cbt-758611576a4f6ceb7020e3cee1f70bbd1cc0b4d8.tar.bz2
cbt-758611576a4f6ceb7020e3cee1f70bbd1cc0b4d8.zip
ScalaPB plugin
Diffstat (limited to 'examples')
-rw-r--r--examples/scalapb-example/build/build.scala8
-rw-r--r--examples/scalapb-example/build/build/build.scala5
-rw-r--r--examples/scalapb-example/protobuf-schemas/address.proto6
-rw-r--r--examples/scalapb-example/protobuf-schemas/person.proto12
-rw-r--r--examples/scalapb-example/src/Main.scala14
5 files changed, 45 insertions, 0 deletions
diff --git a/examples/scalapb-example/build/build.scala b/examples/scalapb-example/build/build.scala
new file mode 100644
index 0000000..31597d4
--- /dev/null
+++ b/examples/scalapb-example/build/build.scala
@@ -0,0 +1,8 @@
+import cbt._
+
+class Build(val context: Context) extends BaseBuild with Scalapb {
+ override def compile = taskCache[Build]("compile").memoize{
+ scalapb.apply
+ super.compile
+ }
+}
diff --git a/examples/scalapb-example/build/build/build.scala b/examples/scalapb-example/build/build/build.scala
new file mode 100644
index 0000000..c461c61
--- /dev/null
+++ b/examples/scalapb-example/build/build/build.scala
@@ -0,0 +1,5 @@
+import cbt._
+
+class Build(val context: Context) extends BuildBuild {
+ override def dependencies = super.dependencies :+ plugins.scalapb
+}
diff --git a/examples/scalapb-example/protobuf-schemas/address.proto b/examples/scalapb-example/protobuf-schemas/address.proto
new file mode 100644
index 0000000..c588512
--- /dev/null
+++ b/examples/scalapb-example/protobuf-schemas/address.proto
@@ -0,0 +1,6 @@
+syntax = "proto2";
+
+package foo;
+message Address {
+ optional string street = 1;
+}
diff --git a/examples/scalapb-example/protobuf-schemas/person.proto b/examples/scalapb-example/protobuf-schemas/person.proto
new file mode 100644
index 0000000..d829767
--- /dev/null
+++ b/examples/scalapb-example/protobuf-schemas/person.proto
@@ -0,0 +1,12 @@
+syntax = "proto2";
+
+import "address.proto";
+
+package foo;
+message Person {
+ optional string name = 1;
+ optional int32 age = 2;
+
+ // Address is a message defined somewhere else.
+ repeated Address addresses = 3;
+}
diff --git a/examples/scalapb-example/src/Main.scala b/examples/scalapb-example/src/Main.scala
new file mode 100644
index 0000000..83de69d
--- /dev/null
+++ b/examples/scalapb-example/src/Main.scala
@@ -0,0 +1,14 @@
+import foo._
+object Main extends App {
+ println(
+ person.Person(
+ Some("name"),
+ Some(123),
+ Seq(
+ address.Address(
+ Some("High Street")
+ )
+ )
+ )
+ )
+}