summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCsaba Hruska <csaba.hruska@gmail.com>2016-11-10 16:11:29 +0100
committerCsaba Hruska <csaba.hruska@gmail.com>2016-11-10 16:39:42 +0100
commit246cc8b8ef6ae0d486fc82c3b28502c21af738bf (patch)
treeb83cbb02db3298b5fd7492edc405664ec81370b2
parentf4af737a0d4a1fd3b3c6babc2c119129df34f77d (diff)
update type info to include warnings
-rw-r--r--ddl/Definitions.hs16
-rw-r--r--ddl/out/LambdaCube.IR.cpp2
-rw-r--r--ddl/out/LambdaCube.IR.cs2
-rw-r--r--ddl/out/LambdaCube.IR.hpp2
-rw-r--r--ddl/out/LambdaCube.IR.hs2
-rw-r--r--ddl/out/LambdaCube.IR.purs2
-rw-r--r--ddl/out/LambdaCube.IR.swift2
-rw-r--r--ddl/out/LambdaCube.IR2.hpp2
-rw-r--r--ddl/out/LambdaCube.Mesh.cpp2
-rw-r--r--ddl/out/LambdaCube.Mesh.cs2
-rw-r--r--ddl/out/LambdaCube.Mesh.hpp2
-rw-r--r--ddl/out/LambdaCube.Mesh.hs2
-rw-r--r--ddl/out/LambdaCube.Mesh.purs2
-rw-r--r--ddl/out/LambdaCube.Mesh.swift2
-rw-r--r--ddl/out/LambdaCube.Mesh2.hpp2
-rw-r--r--ddl/out/LambdaCube.PipelineSchema.cpp2
-rw-r--r--ddl/out/LambdaCube.PipelineSchema.cs2
-rw-r--r--ddl/out/LambdaCube.PipelineSchema.hpp2
-rw-r--r--ddl/out/LambdaCube.PipelineSchema.hs2
-rw-r--r--ddl/out/LambdaCube.PipelineSchema.purs2
-rw-r--r--ddl/out/LambdaCube.PipelineSchema.swift2
-rw-r--r--ddl/out/LambdaCube.PipelineSchema2.hpp2
-rw-r--r--ddl/out/LambdaCube.TypeInfo.cpp72
-rw-r--r--ddl/out/LambdaCube.TypeInfo.cs116
-rw-r--r--ddl/out/LambdaCube.TypeInfo.hpp37
-rw-r--r--ddl/out/LambdaCube.TypeInfo.hs68
-rw-r--r--ddl/out/LambdaCube.TypeInfo.purs68
-rw-r--r--ddl/out/LambdaCube.TypeInfo.swift50
-rw-r--r--ddl/out/LambdaCube.TypeInfo2.hpp37
-rw-r--r--ddl/out/TestData.cpp2
-rw-r--r--ddl/out/TestData.cs2
-rw-r--r--ddl/out/TestData.hpp2
-rw-r--r--ddl/out/TestData.hs2
-rw-r--r--ddl/out/TestData.purs2
-rw-r--r--ddl/out/TestData.swift2
-rw-r--r--ddl/out/TestData2.hpp2
-rw-r--r--ddl/out/java/LambdaCube/IR/AccumulationContext.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/ArrayValue.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/Backend.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/BlendEquation.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/Blending.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/BlendingFactor.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/ClearImage.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/ColorArity.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/Command.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/ComparisonFunction.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/CullMode.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/EdgeMode.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/FetchPrimitive.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/Filter.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/FragmentOperation.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/FrontFace.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/ImageRef.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/ImageSemantic.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/InputType.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/JSON.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/LogicOperation.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/MipMap.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/OutputPrimitive.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/Parameter.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/Pipeline.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/PointSize.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/PointSpriteCoordOrigin.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/PolygonMode.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/PolygonOffset.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/Program.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/ProvokingVertex.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/RasterContext.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/RenderTarget.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/SamplerDescriptor.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/Slot.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/StencilOperation.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/StencilOps.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/StencilTest.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/StencilTests.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/StreamData.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/TargetItem.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/TextureDataType.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/TextureDescriptor.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/TextureType.java2
-rw-r--r--ddl/out/java/LambdaCube/IR/Value.java2
-rw-r--r--ddl/out/java/LambdaCube/Mesh/JSON.java2
-rw-r--r--ddl/out/java/LambdaCube/Mesh/Mesh.java2
-rw-r--r--ddl/out/java/LambdaCube/Mesh/MeshAttribute.java2
-rw-r--r--ddl/out/java/LambdaCube/Mesh/MeshPrimitive.java2
-rw-r--r--ddl/out/java/LambdaCube/PipelineSchema/JSON.java2
-rw-r--r--ddl/out/java/LambdaCube/PipelineSchema/ObjectArraySchema.java2
-rw-r--r--ddl/out/java/LambdaCube/PipelineSchema/PipelineSchema.java2
-rw-r--r--ddl/out/java/LambdaCube/PipelineSchema/StreamType.java2
-rw-r--r--ddl/out/java/LambdaCube/TypeInfo/CompileResult.java9
-rw-r--r--ddl/out/java/LambdaCube/TypeInfo/ErrorInfo.java24
-rw-r--r--ddl/out/java/LambdaCube/TypeInfo/JSON.java109
-rw-r--r--ddl/out/java/LambdaCube/TypeInfo/Range.java2
-rw-r--r--ddl/out/java/LambdaCube/TypeInfo/TypeInfo.java2
-rw-r--r--ddl/out/java/LambdaCube/TypeInfo/WarningInfo.java24
-rw-r--r--ddl/out/java/TestData/ClientInfo.java2
-rw-r--r--ddl/out/java/TestData/Frame.java2
-rw-r--r--ddl/out/java/TestData/FrameResult.java2
-rw-r--r--ddl/out/java/TestData/JSON.java2
-rw-r--r--ddl/out/java/TestData/PipelineInfo.java2
-rw-r--r--ddl/out/java/TestData/RenderJob.java2
-rw-r--r--ddl/out/java/TestData/RenderJobResult.java2
-rw-r--r--ddl/out/java/TestData/Scene.java2
103 files changed, 662 insertions, 150 deletions
diff --git a/ddl/Definitions.hs b/ddl/Definitions.hs
index 9e08cc9..847078c 100644
--- a/ddl/Definitions.hs
+++ b/ddl/Definitions.hs
@@ -474,9 +474,21 @@ typeInfo = do
474 , "text" #:: String 474 , "text" #:: String
475 ] 475 ]
476 476
477 data_ "WarningInfo" $ do
478 constR_ "WarningInfo"
479 [ "wRange" #:: "Range"
480 , "wText" #:: String
481 ]
482
483 data_ "ErrorInfo" $ do
484 constR_ "ErrorInfo"
485 [ "eRange" #:: "Range"
486 , "eText" #:: String
487 ]
488
477 data_ "CompileResult" $ do 489 data_ "CompileResult" $ do
478 const_ "CompileError" [Array "Range", String, Array "TypeInfo"] 490 const_ "CompileError" [Array "TypeInfo", Array "WarningInfo", Array "ErrorInfo"]
479 const_ "Compiled" [String, String, "Pipeline", Array "TypeInfo"] 491 const_ "Compiled" [String, String, "Pipeline", Array "TypeInfo", Array "WarningInfo"]
480 492
481pipelineSchema = do 493pipelineSchema = do
482 data_ "StreamType" $ do 494 data_ "StreamType" $ do
diff --git a/ddl/out/LambdaCube.IR.cpp b/ddl/out/LambdaCube.IR.cpp
index 9504b00..0d9c312 100644
--- a/ddl/out/LambdaCube.IR.cpp
+++ b/ddl/out/LambdaCube.IR.cpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4#include "LambdaCube.IR.hpp" 4#include "LambdaCube.IR.hpp"
5template<> json toJSON<std::shared_ptr<ArrayValue>>(std::shared_ptr<ArrayValue> &v) { 5template<> json toJSON<std::shared_ptr<ArrayValue>>(std::shared_ptr<ArrayValue> &v) {
diff --git a/ddl/out/LambdaCube.IR.cs b/ddl/out/LambdaCube.IR.cs
index 1edf01f..cd00b46 100644
--- a/ddl/out/LambdaCube.IR.cs
+++ b/ddl/out/LambdaCube.IR.cs
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4using System; 4using System;
5using System.Linq; 5using System.Linq;
diff --git a/ddl/out/LambdaCube.IR.hpp b/ddl/out/LambdaCube.IR.hpp
index f1c548b..4b4560e 100644
--- a/ddl/out/LambdaCube.IR.hpp
+++ b/ddl/out/LambdaCube.IR.hpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4#ifndef HEADER_LambdaCube.IR_H 4#ifndef HEADER_LambdaCube.IR_H
5#define HEADER_LambdaCube.IR_H 5#define HEADER_LambdaCube.IR_H
diff --git a/ddl/out/LambdaCube.IR.hs b/ddl/out/LambdaCube.IR.hs
index a69131c..3aaf6eb 100644
--- a/ddl/out/LambdaCube.IR.hs
+++ b/ddl/out/LambdaCube.IR.hs
@@ -1,5 +1,5 @@
1-- generated file, do not modify! 1-- generated file, do not modify!
2-- 2016-09-15T19:44:47.624123918Z 2-- 2016-11-10T15:07:10.798971000000Z
3 3
4{-# LANGUAGE OverloadedStrings, RecordWildCards #-} 4{-# LANGUAGE OverloadedStrings, RecordWildCards #-}
5module LambdaCube.IR where 5module LambdaCube.IR where
diff --git a/ddl/out/LambdaCube.IR.purs b/ddl/out/LambdaCube.IR.purs
index 644bd3a..b159581 100644
--- a/ddl/out/LambdaCube.IR.purs
+++ b/ddl/out/LambdaCube.IR.purs
@@ -1,5 +1,5 @@
1-- generated file, do not modify! 1-- generated file, do not modify!
2-- 2016-09-15T19:44:47.624123918Z 2-- 2016-11-10T15:07:10.798971000000Z
3 3
4module LambdaCube.IR where 4module LambdaCube.IR where
5import Prelude 5import Prelude
diff --git a/ddl/out/LambdaCube.IR.swift b/ddl/out/LambdaCube.IR.swift
index 9c4063d..6ce13f5 100644
--- a/ddl/out/LambdaCube.IR.swift
+++ b/ddl/out/LambdaCube.IR.swift
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4typealias StreamName = Int 4typealias StreamName = Int
5 5
diff --git a/ddl/out/LambdaCube.IR2.hpp b/ddl/out/LambdaCube.IR2.hpp
index 2acaffa..36eee3a 100644
--- a/ddl/out/LambdaCube.IR2.hpp
+++ b/ddl/out/LambdaCube.IR2.hpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4#ifndef HEADER_LambdaCube.IR_H 4#ifndef HEADER_LambdaCube.IR_H
5#define HEADER_LambdaCube.IR_H 5#define HEADER_LambdaCube.IR_H
diff --git a/ddl/out/LambdaCube.Mesh.cpp b/ddl/out/LambdaCube.Mesh.cpp
index 12ed2d5..3810028 100644
--- a/ddl/out/LambdaCube.Mesh.cpp
+++ b/ddl/out/LambdaCube.Mesh.cpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.078244539Z 2// 2016-11-10T15:07:11.866163000000Z
3 3
4#include "LambdaCube.Mesh.hpp" 4#include "LambdaCube.Mesh.hpp"
5template<> json toJSON<std::shared_ptr<MeshAttribute>>(std::shared_ptr<MeshAttribute> &v) { 5template<> json toJSON<std::shared_ptr<MeshAttribute>>(std::shared_ptr<MeshAttribute> &v) {
diff --git a/ddl/out/LambdaCube.Mesh.cs b/ddl/out/LambdaCube.Mesh.cs
index c535e9e..825e571 100644
--- a/ddl/out/LambdaCube.Mesh.cs
+++ b/ddl/out/LambdaCube.Mesh.cs
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.078244539Z 2// 2016-11-10T15:07:11.866163000000Z
3 3
4using System; 4using System;
5using System.Linq; 5using System.Linq;
diff --git a/ddl/out/LambdaCube.Mesh.hpp b/ddl/out/LambdaCube.Mesh.hpp
index d2671ef..f5c7fab 100644
--- a/ddl/out/LambdaCube.Mesh.hpp
+++ b/ddl/out/LambdaCube.Mesh.hpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.078244539Z 2// 2016-11-10T15:07:11.866163000000Z
3 3
4#ifndef HEADER_LambdaCube.Mesh_H 4#ifndef HEADER_LambdaCube.Mesh_H
5#define HEADER_LambdaCube.Mesh_H 5#define HEADER_LambdaCube.Mesh_H
diff --git a/ddl/out/LambdaCube.Mesh.hs b/ddl/out/LambdaCube.Mesh.hs
index bc49bb0..c2c4ac1 100644
--- a/ddl/out/LambdaCube.Mesh.hs
+++ b/ddl/out/LambdaCube.Mesh.hs
@@ -1,5 +1,5 @@
1-- generated file, do not modify! 1-- generated file, do not modify!
2-- 2016-09-15T19:44:48.078244539Z 2-- 2016-11-10T15:07:11.866163000000Z
3 3
4{-# LANGUAGE OverloadedStrings, RecordWildCards #-} 4{-# LANGUAGE OverloadedStrings, RecordWildCards #-}
5module LambdaCube.Mesh where 5module LambdaCube.Mesh where
diff --git a/ddl/out/LambdaCube.Mesh.purs b/ddl/out/LambdaCube.Mesh.purs
index 696cdb3..d06934b 100644
--- a/ddl/out/LambdaCube.Mesh.purs
+++ b/ddl/out/LambdaCube.Mesh.purs
@@ -1,5 +1,5 @@
1-- generated file, do not modify! 1-- generated file, do not modify!
2-- 2016-09-15T19:44:48.078244539Z 2-- 2016-11-10T15:07:11.866163000000Z
3 3
4module LambdaCube.Mesh where 4module LambdaCube.Mesh where
5import Prelude 5import Prelude
diff --git a/ddl/out/LambdaCube.Mesh.swift b/ddl/out/LambdaCube.Mesh.swift
index d54e9f0..ce778fd 100644
--- a/ddl/out/LambdaCube.Mesh.swift
+++ b/ddl/out/LambdaCube.Mesh.swift
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.078244539Z 2// 2016-11-10T15:07:11.866163000000Z
3 3
4enum MeshAttribute { 4enum MeshAttribute {
5 case A_Float(Array<Float>) 5 case A_Float(Array<Float>)
diff --git a/ddl/out/LambdaCube.Mesh2.hpp b/ddl/out/LambdaCube.Mesh2.hpp
index 9ad0e46..33e91e0 100644
--- a/ddl/out/LambdaCube.Mesh2.hpp
+++ b/ddl/out/LambdaCube.Mesh2.hpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.078244539Z 2// 2016-11-10T15:07:11.866163000000Z
3 3
4#ifndef HEADER_LambdaCube.Mesh_H 4#ifndef HEADER_LambdaCube.Mesh_H
5#define HEADER_LambdaCube.Mesh_H 5#define HEADER_LambdaCube.Mesh_H
diff --git a/ddl/out/LambdaCube.PipelineSchema.cpp b/ddl/out/LambdaCube.PipelineSchema.cpp
index 857c910..a3bdb7f 100644
--- a/ddl/out/LambdaCube.PipelineSchema.cpp
+++ b/ddl/out/LambdaCube.PipelineSchema.cpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.052942639Z 2// 2016-11-10T15:07:11.805936000000Z
3 3
4#include "LambdaCube.PipelineSchema.hpp" 4#include "LambdaCube.PipelineSchema.hpp"
5template<> json toJSON<std::shared_ptr<StreamType>>(std::shared_ptr<StreamType> &v) { 5template<> json toJSON<std::shared_ptr<StreamType>>(std::shared_ptr<StreamType> &v) {
diff --git a/ddl/out/LambdaCube.PipelineSchema.cs b/ddl/out/LambdaCube.PipelineSchema.cs
index c75d548..a069bc3 100644
--- a/ddl/out/LambdaCube.PipelineSchema.cs
+++ b/ddl/out/LambdaCube.PipelineSchema.cs
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.052942639Z 2// 2016-11-10T15:07:11.805936000000Z
3 3
4using System; 4using System;
5using System.Linq; 5using System.Linq;
diff --git a/ddl/out/LambdaCube.PipelineSchema.hpp b/ddl/out/LambdaCube.PipelineSchema.hpp
index 2242eb4..6731aab 100644
--- a/ddl/out/LambdaCube.PipelineSchema.hpp
+++ b/ddl/out/LambdaCube.PipelineSchema.hpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.052942639Z 2// 2016-11-10T15:07:11.805936000000Z
3 3
4#ifndef HEADER_LambdaCube.PipelineSchema_H 4#ifndef HEADER_LambdaCube.PipelineSchema_H
5#define HEADER_LambdaCube.PipelineSchema_H 5#define HEADER_LambdaCube.PipelineSchema_H
diff --git a/ddl/out/LambdaCube.PipelineSchema.hs b/ddl/out/LambdaCube.PipelineSchema.hs
index ef3c40d..0f9f5ef 100644
--- a/ddl/out/LambdaCube.PipelineSchema.hs
+++ b/ddl/out/LambdaCube.PipelineSchema.hs
@@ -1,5 +1,5 @@
1-- generated file, do not modify! 1-- generated file, do not modify!
2-- 2016-09-15T19:44:48.052942639Z 2-- 2016-11-10T15:07:11.805936000000Z
3 3
4{-# LANGUAGE OverloadedStrings, RecordWildCards #-} 4{-# LANGUAGE OverloadedStrings, RecordWildCards #-}
5module LambdaCube.PipelineSchema where 5module LambdaCube.PipelineSchema where
diff --git a/ddl/out/LambdaCube.PipelineSchema.purs b/ddl/out/LambdaCube.PipelineSchema.purs
index 167193e..dcea325 100644
--- a/ddl/out/LambdaCube.PipelineSchema.purs
+++ b/ddl/out/LambdaCube.PipelineSchema.purs
@@ -1,5 +1,5 @@
1-- generated file, do not modify! 1-- generated file, do not modify!
2-- 2016-09-15T19:44:48.052942639Z 2-- 2016-11-10T15:07:11.805936000000Z
3 3
4module LambdaCube.PipelineSchema where 4module LambdaCube.PipelineSchema where
5import Prelude 5import Prelude
diff --git a/ddl/out/LambdaCube.PipelineSchema.swift b/ddl/out/LambdaCube.PipelineSchema.swift
index 36575bc..9e760ec 100644
--- a/ddl/out/LambdaCube.PipelineSchema.swift
+++ b/ddl/out/LambdaCube.PipelineSchema.swift
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.052942639Z 2// 2016-11-10T15:07:11.805936000000Z
3 3
4enum StreamType { 4enum StreamType {
5 case Attribute_Word 5 case Attribute_Word
diff --git a/ddl/out/LambdaCube.PipelineSchema2.hpp b/ddl/out/LambdaCube.PipelineSchema2.hpp
index 2ace7d9..6a8665b 100644
--- a/ddl/out/LambdaCube.PipelineSchema2.hpp
+++ b/ddl/out/LambdaCube.PipelineSchema2.hpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.052942639Z 2// 2016-11-10T15:07:11.805936000000Z
3 3
4#ifndef HEADER_LambdaCube.PipelineSchema_H 4#ifndef HEADER_LambdaCube.PipelineSchema_H
5#define HEADER_LambdaCube.PipelineSchema_H 5#define HEADER_LambdaCube.PipelineSchema_H
diff --git a/ddl/out/LambdaCube.TypeInfo.cpp b/ddl/out/LambdaCube.TypeInfo.cpp
index 51c897d..34aaf21 100644
--- a/ddl/out/LambdaCube.TypeInfo.cpp
+++ b/ddl/out/LambdaCube.TypeInfo.cpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.120020034Z 2// 2016-11-10T15:07:11.972496000000Z
3 3
4#include "LambdaCube.TypeInfo.hpp" 4#include "LambdaCube.TypeInfo.hpp"
5template<> json toJSON<std::shared_ptr<Range>>(std::shared_ptr<Range> &v) { 5template<> json toJSON<std::shared_ptr<Range>>(std::shared_ptr<Range> &v) {
@@ -68,6 +68,68 @@ template<> std::shared_ptr<TypeInfo> fromJSON<std::shared_ptr<TypeInfo>>(W<std::
68 return o; 68 return o;
69} 69}
70 70
71template<> json toJSON<std::shared_ptr<WarningInfo>>(std::shared_ptr<WarningInfo> &v) {
72 json obj({});
73 switch (v->tag) {
74 case ::WarningInfo::tag::WarningInfo:
75 obj["tag"] = "WarningInfo";
76 {
77 std::shared_ptr<data::WarningInfo> tv = std::static_pointer_cast<data::WarningInfo>(v);
78 obj["wRange"] = toJSON(tv->wRange);
79 obj["wText"] = toJSON(tv->wText);
80 }
81 break;
82 }
83 return obj;
84}
85
86template<> std::shared_ptr<WarningInfo> fromJSON<std::shared_ptr<WarningInfo>>(W<std::shared_ptr<WarningInfo>> v, json &obj) {
87 enum ::WarningInfo::tag tagType;
88 std::string tag = obj["tag"];
89 if (tag == "WarningInfo") {
90 tagType = ::WarningInfo::tag::WarningInfo;
91 std::shared_ptr<data::WarningInfo> tv(new data::WarningInfo());
92 tv->wRange = fromJSON(W<std::shared_ptr<::Range>>(), obj["wRange"]);
93 tv->wText = fromJSON(W<String>(), obj["wText"]);
94 return tv;
95 }
96 else throw "unknown constructor: " + tag;
97 std::shared_ptr<::WarningInfo> o(new ::WarningInfo());
98 o->tag = tagType;
99 return o;
100}
101
102template<> json toJSON<std::shared_ptr<ErrorInfo>>(std::shared_ptr<ErrorInfo> &v) {
103 json obj({});
104 switch (v->tag) {
105 case ::ErrorInfo::tag::ErrorInfo:
106 obj["tag"] = "ErrorInfo";
107 {
108 std::shared_ptr<data::ErrorInfo> tv = std::static_pointer_cast<data::ErrorInfo>(v);
109 obj["eRange"] = toJSON(tv->eRange);
110 obj["eText"] = toJSON(tv->eText);
111 }
112 break;
113 }
114 return obj;
115}
116
117template<> std::shared_ptr<ErrorInfo> fromJSON<std::shared_ptr<ErrorInfo>>(W<std::shared_ptr<ErrorInfo>> v, json &obj) {
118 enum ::ErrorInfo::tag tagType;
119 std::string tag = obj["tag"];
120 if (tag == "ErrorInfo") {
121 tagType = ::ErrorInfo::tag::ErrorInfo;
122 std::shared_ptr<data::ErrorInfo> tv(new data::ErrorInfo());
123 tv->eRange = fromJSON(W<std::shared_ptr<::Range>>(), obj["eRange"]);
124 tv->eText = fromJSON(W<String>(), obj["eText"]);
125 return tv;
126 }
127 else throw "unknown constructor: " + tag;
128 std::shared_ptr<::ErrorInfo> o(new ::ErrorInfo());
129 o->tag = tagType;
130 return o;
131}
132
71template<> json toJSON<std::shared_ptr<CompileResult>>(std::shared_ptr<CompileResult> &v) { 133template<> json toJSON<std::shared_ptr<CompileResult>>(std::shared_ptr<CompileResult> &v) {
72 json obj({}); 134 json obj({});
73 switch (v->tag) { 135 switch (v->tag) {
@@ -88,6 +150,7 @@ template<> json toJSON<std::shared_ptr<CompileResult>>(std::shared_ptr<CompileRe
88 obj["arg1"] = toJSON(tv->_1); 150 obj["arg1"] = toJSON(tv->_1);
89 obj["arg2"] = toJSON(tv->_2); 151 obj["arg2"] = toJSON(tv->_2);
90 obj["arg3"] = toJSON(tv->_3); 152 obj["arg3"] = toJSON(tv->_3);
153 obj["arg4"] = toJSON(tv->_4);
91 } 154 }
92 break; 155 break;
93 } 156 }
@@ -100,9 +163,9 @@ template<> std::shared_ptr<CompileResult> fromJSON<std::shared_ptr<CompileResult
100 if (tag == "CompileError") { 163 if (tag == "CompileError") {
101 tagType = ::CompileResult::tag::CompileError; 164 tagType = ::CompileResult::tag::CompileError;
102 std::shared_ptr<data::CompileError> tv(new data::CompileError()); 165 std::shared_ptr<data::CompileError> tv(new data::CompileError());
103 tv->_0 = fromJSON(W<std::vector<std::shared_ptr<::Range>>>(), obj["arg0"]); 166 tv->_0 = fromJSON(W<std::vector<std::shared_ptr<::TypeInfo>>>(), obj["arg0"]);
104 tv->_1 = fromJSON(W<String>(), obj["arg1"]); 167 tv->_1 = fromJSON(W<std::vector<std::shared_ptr<::WarningInfo>>>(), obj["arg1"]);
105 tv->_2 = fromJSON(W<std::vector<std::shared_ptr<::TypeInfo>>>(), obj["arg2"]); 168 tv->_2 = fromJSON(W<std::vector<std::shared_ptr<::ErrorInfo>>>(), obj["arg2"]);
106 return tv; 169 return tv;
107 } 170 }
108 else if (tag == "Compiled") { 171 else if (tag == "Compiled") {
@@ -112,6 +175,7 @@ template<> std::shared_ptr<CompileResult> fromJSON<std::shared_ptr<CompileResult
112 tv->_1 = fromJSON(W<String>(), obj["arg1"]); 175 tv->_1 = fromJSON(W<String>(), obj["arg1"]);
113 tv->_2 = fromJSON(W<std::shared_ptr<::Pipeline>>(), obj["arg2"]); 176 tv->_2 = fromJSON(W<std::shared_ptr<::Pipeline>>(), obj["arg2"]);
114 tv->_3 = fromJSON(W<std::vector<std::shared_ptr<::TypeInfo>>>(), obj["arg3"]); 177 tv->_3 = fromJSON(W<std::vector<std::shared_ptr<::TypeInfo>>>(), obj["arg3"]);
178 tv->_4 = fromJSON(W<std::vector<std::shared_ptr<::WarningInfo>>>(), obj["arg4"]);
115 return tv; 179 return tv;
116 } 180 }
117 else throw "unknown constructor: " + tag; 181 else throw "unknown constructor: " + tag;
diff --git a/ddl/out/LambdaCube.TypeInfo.cs b/ddl/out/LambdaCube.TypeInfo.cs
index f0a6253..c58ec62 100644
--- a/ddl/out/LambdaCube.TypeInfo.cs
+++ b/ddl/out/LambdaCube.TypeInfo.cs
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.120020034Z 2// 2016-11-10T15:07:11.972496000000Z
3 3
4using System; 4using System;
5using System.Linq; 5using System.Linq;
@@ -39,6 +39,34 @@ namespace LambdaCube.TypeInfo {
39 public TypeInfo() { tag = LambdaCube.TypeInfo.TypeInfo.Tag.TypeInfo; } 39 public TypeInfo() { tag = LambdaCube.TypeInfo.TypeInfo.Tag.TypeInfo; }
40 }; 40 };
41 } 41 }
42 public class WarningInfo {
43 public enum Tag {
44 WarningInfo
45 };
46 public Tag tag;
47 };
48
49 namespace data {
50 public class WarningInfo : LambdaCube.TypeInfo.WarningInfo {
51 public global::LambdaCube.TypeInfo.Range wRange;
52 public string wText;
53 public WarningInfo() { tag = LambdaCube.TypeInfo.WarningInfo.Tag.WarningInfo; }
54 };
55 }
56 public class ErrorInfo {
57 public enum Tag {
58 ErrorInfo
59 };
60 public Tag tag;
61 };
62
63 namespace data {
64 public class ErrorInfo : LambdaCube.TypeInfo.ErrorInfo {
65 public global::LambdaCube.TypeInfo.Range eRange;
66 public string eText;
67 public ErrorInfo() { tag = LambdaCube.TypeInfo.ErrorInfo.Tag.ErrorInfo; }
68 };
69 }
42 public class CompileResult { 70 public class CompileResult {
43 public enum Tag { 71 public enum Tag {
44 CompileError, 72 CompileError,
@@ -49,9 +77,9 @@ namespace LambdaCube.TypeInfo {
49 77
50 namespace data { 78 namespace data {
51 public class CompileError : LambdaCube.TypeInfo.CompileResult { 79 public class CompileError : LambdaCube.TypeInfo.CompileResult {
52 public List<global::LambdaCube.TypeInfo.Range> _0; 80 public List<global::LambdaCube.TypeInfo.TypeInfo> _0;
53 public string _1; 81 public List<global::LambdaCube.TypeInfo.WarningInfo> _1;
54 public List<global::LambdaCube.TypeInfo.TypeInfo> _2; 82 public List<global::LambdaCube.TypeInfo.ErrorInfo> _2;
55 public CompileError() { tag = LambdaCube.TypeInfo.CompileResult.Tag.CompileError; } 83 public CompileError() { tag = LambdaCube.TypeInfo.CompileResult.Tag.CompileError; }
56 }; 84 };
57 public class Compiled : LambdaCube.TypeInfo.CompileResult { 85 public class Compiled : LambdaCube.TypeInfo.CompileResult {
@@ -59,6 +87,7 @@ namespace LambdaCube.TypeInfo {
59 public string _1; 87 public string _1;
60 public global::LambdaCube.TypeInfo.Pipeline _2; 88 public global::LambdaCube.TypeInfo.Pipeline _2;
61 public List<global::LambdaCube.TypeInfo.TypeInfo> _3; 89 public List<global::LambdaCube.TypeInfo.TypeInfo> _3;
90 public List<global::LambdaCube.TypeInfo.WarningInfo> _4;
62 public Compiled() { tag = LambdaCube.TypeInfo.CompileResult.Tag.Compiled; } 91 public Compiled() { tag = LambdaCube.TypeInfo.CompileResult.Tag.Compiled; }
63 }; 92 };
64 } 93 }
@@ -67,12 +96,15 @@ namespace LambdaCube.TypeInfo {
67 public enum Type { 96 public enum Type {
68 Int, 97 Int,
69 String, 98 String,
70 Array_Range, 99 Array_ErrorInfo,
71 Array_TypeInfo, 100 Array_TypeInfo,
101 Array_WarningInfo,
72 CompileResult, 102 CompileResult,
103 ErrorInfo,
73 Pipeline, 104 Pipeline,
74 Range, 105 Range,
75 TypeInfo 106 TypeInfo,
107 WarningInfo
76 } 108 }
77 109
78 public class Loader { 110 public class Loader {
@@ -80,8 +112,9 @@ namespace LambdaCube.TypeInfo {
80 switch (type) { 112 switch (type) {
81 case Type.Int: return (int)obj; 113 case Type.Int: return (int)obj;
82 case Type.String: return (string)obj; 114 case Type.String: return (string)obj;
83 case Type.Array_Range: return ((JArray)obj).Select(x => (global::LambdaCube.TypeInfo.Range)fromJSON (Type.Range, x)).ToList(); 115 case Type.Array_ErrorInfo: return ((JArray)obj).Select(x => (global::LambdaCube.TypeInfo.ErrorInfo)fromJSON (Type.ErrorInfo, x)).ToList();
84 case Type.Array_TypeInfo: return ((JArray)obj).Select(x => (global::LambdaCube.TypeInfo.TypeInfo)fromJSON (Type.TypeInfo, x)).ToList(); 116 case Type.Array_TypeInfo: return ((JArray)obj).Select(x => (global::LambdaCube.TypeInfo.TypeInfo)fromJSON (Type.TypeInfo, x)).ToList();
117 case Type.Array_WarningInfo: return ((JArray)obj).Select(x => (global::LambdaCube.TypeInfo.WarningInfo)fromJSON (Type.WarningInfo, x)).ToList();
85 118
86 case Type.Range: { 119 case Type.Range: {
87 string tag = (string)obj["tag"]; 120 string tag = (string)obj["tag"];
@@ -109,14 +142,38 @@ namespace LambdaCube.TypeInfo {
109 default: throw new Exception("unknown constructor: " + tag); 142 default: throw new Exception("unknown constructor: " + tag);
110 } 143 }
111 } 144 }
145 case Type.WarningInfo: {
146 string tag = (string)obj["tag"];
147 switch (tag) {
148 case "WarningInfo": {
149 data.WarningInfo tv = new data.WarningInfo();
150 tv.wRange = (global::LambdaCube.TypeInfo.Range)fromJSON(Type.Range,obj["wRange"]);
151 tv.wText = (string)fromJSON(Type.String,obj["wText"]);
152 return tv;
153 }
154 default: throw new Exception("unknown constructor: " + tag);
155 }
156 }
157 case Type.ErrorInfo: {
158 string tag = (string)obj["tag"];
159 switch (tag) {
160 case "ErrorInfo": {
161 data.ErrorInfo tv = new data.ErrorInfo();
162 tv.eRange = (global::LambdaCube.TypeInfo.Range)fromJSON(Type.Range,obj["eRange"]);
163 tv.eText = (string)fromJSON(Type.String,obj["eText"]);
164 return tv;
165 }
166 default: throw new Exception("unknown constructor: " + tag);
167 }
168 }
112 case Type.CompileResult: { 169 case Type.CompileResult: {
113 string tag = (string)obj["tag"]; 170 string tag = (string)obj["tag"];
114 switch (tag) { 171 switch (tag) {
115 case "CompileError": { 172 case "CompileError": {
116 data.CompileError tv = new data.CompileError(); 173 data.CompileError tv = new data.CompileError();
117 tv._0 = (List<global::LambdaCube.TypeInfo.Range>)fromJSON(Type.Array_Range,obj["arg0"]); 174 tv._0 = (List<global::LambdaCube.TypeInfo.TypeInfo>)fromJSON(Type.Array_TypeInfo,obj["arg0"]);
118 tv._1 = (string)fromJSON(Type.String,obj["arg1"]); 175 tv._1 = (List<global::LambdaCube.TypeInfo.WarningInfo>)fromJSON(Type.Array_WarningInfo,obj["arg1"]);
119 tv._2 = (List<global::LambdaCube.TypeInfo.TypeInfo>)fromJSON(Type.Array_TypeInfo,obj["arg2"]); 176 tv._2 = (List<global::LambdaCube.TypeInfo.ErrorInfo>)fromJSON(Type.Array_ErrorInfo,obj["arg2"]);
120 return tv; 177 return tv;
121 } 178 }
122 case "Compiled": { 179 case "Compiled": {
@@ -125,6 +182,7 @@ namespace LambdaCube.TypeInfo {
125 tv._1 = (string)fromJSON(Type.String,obj["arg1"]); 182 tv._1 = (string)fromJSON(Type.String,obj["arg1"]);
126 tv._2 = (global::LambdaCube.TypeInfo.Pipeline)fromJSON(Type.Pipeline,obj["arg2"]); 183 tv._2 = (global::LambdaCube.TypeInfo.Pipeline)fromJSON(Type.Pipeline,obj["arg2"]);
127 tv._3 = (List<global::LambdaCube.TypeInfo.TypeInfo>)fromJSON(Type.Array_TypeInfo,obj["arg3"]); 184 tv._3 = (List<global::LambdaCube.TypeInfo.TypeInfo>)fromJSON(Type.Array_TypeInfo,obj["arg3"]);
185 tv._4 = (List<global::LambdaCube.TypeInfo.WarningInfo>)fromJSON(Type.Array_WarningInfo,obj["arg4"]);
128 return tv; 186 return tv;
129 } 187 }
130 default: throw new Exception("unknown constructor: " + tag); 188 default: throw new Exception("unknown constructor: " + tag);
@@ -165,6 +223,34 @@ namespace LambdaCube.TypeInfo {
165 } 223 }
166 return obj; 224 return obj;
167 } 225 }
226 public static JToken toJSON(WarningInfo v) {
227 var obj = new JObject();
228 switch (v.tag) {
229 case WarningInfo.Tag.WarningInfo:
230 obj["tag"] = "WarningInfo";
231 {
232 var tv = (data.WarningInfo)v;
233 obj["wRange"] = toJSON(tv.wRange);
234 obj["wText"] = toJSON(tv.wText);
235 }
236 break;
237 }
238 return obj;
239 }
240 public static JToken toJSON(ErrorInfo v) {
241 var obj = new JObject();
242 switch (v.tag) {
243 case ErrorInfo.Tag.ErrorInfo:
244 obj["tag"] = "ErrorInfo";
245 {
246 var tv = (data.ErrorInfo)v;
247 obj["eRange"] = toJSON(tv.eRange);
248 obj["eText"] = toJSON(tv.eText);
249 }
250 break;
251 }
252 return obj;
253 }
168 public static JToken toJSON(CompileResult v) { 254 public static JToken toJSON(CompileResult v) {
169 var obj = new JObject(); 255 var obj = new JObject();
170 switch (v.tag) { 256 switch (v.tag) {
@@ -185,6 +271,7 @@ namespace LambdaCube.TypeInfo {
185 obj["arg1"] = toJSON(tv._1); 271 obj["arg1"] = toJSON(tv._1);
186 obj["arg2"] = toJSON(tv._2); 272 obj["arg2"] = toJSON(tv._2);
187 obj["arg3"] = toJSON(tv._3); 273 obj["arg3"] = toJSON(tv._3);
274 obj["arg4"] = toJSON(tv._4);
188 } 275 }
189 break; 276 break;
190 } 277 }
@@ -193,7 +280,7 @@ namespace LambdaCube.TypeInfo {
193 280
194 public static JToken toJSON(int v) { return new JValue(v); } 281 public static JToken toJSON(int v) { return new JValue(v); }
195 public static JToken toJSON(string v) { return new JValue(v); } 282 public static JToken toJSON(string v) { return new JValue(v); }
196 public static JToken toJSON(List<global::LambdaCube.TypeInfo.Range> v) { 283 public static JToken toJSON(List<global::LambdaCube.TypeInfo.ErrorInfo> v) {
197 var obj = new JArray(); 284 var obj = new JArray();
198 foreach (var i in v) { 285 foreach (var i in v) {
199 obj.Add(toJSON(i)); 286 obj.Add(toJSON(i));
@@ -207,5 +294,12 @@ namespace LambdaCube.TypeInfo {
207 } 294 }
208 return obj; 295 return obj;
209 } 296 }
297 public static JToken toJSON(List<global::LambdaCube.TypeInfo.WarningInfo> v) {
298 var obj = new JArray();
299 foreach (var i in v) {
300 obj.Add(toJSON(i));
301 }
302 return obj;
303 }
210 } 304 }
211} 305}
diff --git a/ddl/out/LambdaCube.TypeInfo.hpp b/ddl/out/LambdaCube.TypeInfo.hpp
index 28bc52f..441e00e 100644
--- a/ddl/out/LambdaCube.TypeInfo.hpp
+++ b/ddl/out/LambdaCube.TypeInfo.hpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.120020034Z 2// 2016-11-10T15:07:11.972496000000Z
3 3
4#ifndef HEADER_LambdaCube.TypeInfo_H 4#ifndef HEADER_LambdaCube.TypeInfo_H
5#define HEADER_LambdaCube.TypeInfo_H 5#define HEADER_LambdaCube.TypeInfo_H
@@ -38,6 +38,34 @@ namespace data {
38 TypeInfo() { tag = tag::TypeInfo; } 38 TypeInfo() { tag = tag::TypeInfo; }
39 }; 39 };
40} 40}
41class WarningInfo {
42 public:
43 enum class tag {
44 WarningInfo
45 } tag;
46};
47namespace data {
48 class WarningInfo : public ::WarningInfo {
49 public:
50 std::shared_ptr<::Range> wRange;
51 String wText;
52 WarningInfo() { tag = tag::WarningInfo; }
53 };
54}
55class ErrorInfo {
56 public:
57 enum class tag {
58 ErrorInfo
59 } tag;
60};
61namespace data {
62 class ErrorInfo : public ::ErrorInfo {
63 public:
64 std::shared_ptr<::Range> eRange;
65 String eText;
66 ErrorInfo() { tag = tag::ErrorInfo; }
67 };
68}
41class CompileResult { 69class CompileResult {
42 public: 70 public:
43 enum class tag { 71 enum class tag {
@@ -48,9 +76,9 @@ class CompileResult {
48namespace data { 76namespace data {
49 class CompileError : public ::CompileResult { 77 class CompileError : public ::CompileResult {
50 public: 78 public:
51 std::vector<std::shared_ptr<::Range>> _0; 79 std::vector<std::shared_ptr<::TypeInfo>> _0;
52 String _1; 80 std::vector<std::shared_ptr<::WarningInfo>> _1;
53 std::vector<std::shared_ptr<::TypeInfo>> _2; 81 std::vector<std::shared_ptr<::ErrorInfo>> _2;
54 CompileError() { tag = tag::CompileError; } 82 CompileError() { tag = tag::CompileError; }
55 }; 83 };
56 class Compiled : public ::CompileResult { 84 class Compiled : public ::CompileResult {
@@ -59,6 +87,7 @@ namespace data {
59 String _1; 87 String _1;
60 std::shared_ptr<::Pipeline> _2; 88 std::shared_ptr<::Pipeline> _2;
61 std::vector<std::shared_ptr<::TypeInfo>> _3; 89 std::vector<std::shared_ptr<::TypeInfo>> _3;
90 std::vector<std::shared_ptr<::WarningInfo>> _4;
62 Compiled() { tag = tag::Compiled; } 91 Compiled() { tag = tag::Compiled; }
63 }; 92 };
64} 93}
diff --git a/ddl/out/LambdaCube.TypeInfo.hs b/ddl/out/LambdaCube.TypeInfo.hs
index 03346b6..9632fff 100644
--- a/ddl/out/LambdaCube.TypeInfo.hs
+++ b/ddl/out/LambdaCube.TypeInfo.hs
@@ -1,5 +1,5 @@
1-- generated file, do not modify! 1-- generated file, do not modify!
2-- 2016-09-15T19:44:48.120020034Z 2-- 2016-11-10T15:07:11.972496000000Z
3 3
4{-# LANGUAGE OverloadedStrings, RecordWildCards #-} 4{-# LANGUAGE OverloadedStrings, RecordWildCards #-}
5module LambdaCube.TypeInfo where 5module LambdaCube.TypeInfo where
@@ -35,9 +35,25 @@ data TypeInfo
35 35
36 deriving (Show, Eq, Ord) 36 deriving (Show, Eq, Ord)
37 37
38data WarningInfo
39 = WarningInfo
40 { wRange :: Range
41 , wText :: String
42 }
43
44 deriving (Show, Eq, Ord)
45
46data ErrorInfo
47 = ErrorInfo
48 { eRange :: Range
49 , eText :: String
50 }
51
52 deriving (Show, Eq, Ord)
53
38data CompileResult 54data CompileResult
39 = CompileError (Vector Range) String (Vector TypeInfo) 55 = CompileError (Vector TypeInfo) (Vector WarningInfo) (Vector ErrorInfo)
40 | Compiled String String Pipeline (Vector TypeInfo) 56 | Compiled String String Pipeline (Vector TypeInfo) (Vector WarningInfo)
41 deriving (Show, Eq, Ord) 57 deriving (Show, Eq, Ord)
42 58
43 59
@@ -89,16 +105,58 @@ instance FromJSON TypeInfo where
89 } 105 }
90 parseJSON _ = mzero 106 parseJSON _ = mzero
91 107
108instance ToJSON WarningInfo where
109 toJSON v = case v of
110 WarningInfo{..} -> object
111 [ "tag" .= ("WarningInfo" :: Text)
112 , "wRange" .= wRange
113 , "wText" .= wText
114 ]
115
116instance FromJSON WarningInfo where
117 parseJSON (Object obj) = do
118 tag <- obj .: "tag"
119 case tag :: Text of
120 "WarningInfo" -> do
121 wRange <- obj .: "wRange"
122 wText <- obj .: "wText"
123 pure $ WarningInfo
124 { wRange = wRange
125 , wText = wText
126 }
127 parseJSON _ = mzero
128
129instance ToJSON ErrorInfo where
130 toJSON v = case v of
131 ErrorInfo{..} -> object
132 [ "tag" .= ("ErrorInfo" :: Text)
133 , "eRange" .= eRange
134 , "eText" .= eText
135 ]
136
137instance FromJSON ErrorInfo where
138 parseJSON (Object obj) = do
139 tag <- obj .: "tag"
140 case tag :: Text of
141 "ErrorInfo" -> do
142 eRange <- obj .: "eRange"
143 eText <- obj .: "eText"
144 pure $ ErrorInfo
145 { eRange = eRange
146 , eText = eText
147 }
148 parseJSON _ = mzero
149
92instance ToJSON CompileResult where 150instance ToJSON CompileResult where
93 toJSON v = case v of 151 toJSON v = case v of
94 CompileError arg0 arg1 arg2 -> object [ "tag" .= ("CompileError" :: Text), "arg0" .= arg0, "arg1" .= arg1, "arg2" .= arg2] 152 CompileError arg0 arg1 arg2 -> object [ "tag" .= ("CompileError" :: Text), "arg0" .= arg0, "arg1" .= arg1, "arg2" .= arg2]
95 Compiled arg0 arg1 arg2 arg3 -> object [ "tag" .= ("Compiled" :: Text), "arg0" .= arg0, "arg1" .= arg1, "arg2" .= arg2, "arg3" .= arg3] 153 Compiled arg0 arg1 arg2 arg3 arg4 -> object [ "tag" .= ("Compiled" :: Text), "arg0" .= arg0, "arg1" .= arg1, "arg2" .= arg2, "arg3" .= arg3, "arg4" .= arg4]
96 154
97instance FromJSON CompileResult where 155instance FromJSON CompileResult where
98 parseJSON (Object obj) = do 156 parseJSON (Object obj) = do
99 tag <- obj .: "tag" 157 tag <- obj .: "tag"
100 case tag :: Text of 158 case tag :: Text of
101 "CompileError" -> CompileError <$> obj .: "arg0" <*> obj .: "arg1" <*> obj .: "arg2" 159 "CompileError" -> CompileError <$> obj .: "arg0" <*> obj .: "arg1" <*> obj .: "arg2"
102 "Compiled" -> Compiled <$> obj .: "arg0" <*> obj .: "arg1" <*> obj .: "arg2" <*> obj .: "arg3" 160 "Compiled" -> Compiled <$> obj .: "arg0" <*> obj .: "arg1" <*> obj .: "arg2" <*> obj .: "arg3" <*> obj .: "arg4"
103 parseJSON _ = mzero 161 parseJSON _ = mzero
104 162
diff --git a/ddl/out/LambdaCube.TypeInfo.purs b/ddl/out/LambdaCube.TypeInfo.purs
index eee3d0c..db22d59 100644
--- a/ddl/out/LambdaCube.TypeInfo.purs
+++ b/ddl/out/LambdaCube.TypeInfo.purs
@@ -1,5 +1,5 @@
1-- generated file, do not modify! 1-- generated file, do not modify!
2-- 2016-09-15T19:44:48.120020034Z 2-- 2016-11-10T15:07:11.972496000000Z
3 3
4module LambdaCube.TypeInfo where 4module LambdaCube.TypeInfo where
5import Prelude 5import Prelude
@@ -36,9 +36,23 @@ data TypeInfo
36 } 36 }
37 37
38 38
39data WarningInfo
40 = WarningInfo
41 { wRange :: Range
42 , wText :: String
43 }
44
45
46data ErrorInfo
47 = ErrorInfo
48 { eRange :: Range
49 , eText :: String
50 }
51
52
39data CompileResult 53data CompileResult
40 = CompileError (Array Range) String (Array TypeInfo) 54 = CompileError (Array TypeInfo) (Array WarningInfo) (Array ErrorInfo)
41 | Compiled String String Pipeline (Array TypeInfo) 55 | Compiled String String Pipeline (Array TypeInfo) (Array WarningInfo)
42 56
43 57
44 58
@@ -92,10 +106,52 @@ instance decodeJsonTypeInfo :: DecodeJson TypeInfo where
92 } 106 }
93 _ -> unsafeCrashWith "decodeJson @ TypeInfo" 107 _ -> unsafeCrashWith "decodeJson @ TypeInfo"
94 108
109instance encodeJsonWarningInfo :: EncodeJson WarningInfo where
110 encodeJson v = case v of
111 WarningInfo r ->
112 "tag" := "WarningInfo" ~>
113 "wRange" := r.wRange ~>
114 "wText" := r.wText ~>
115 jsonEmptyObject
116
117instance decodeJsonWarningInfo :: DecodeJson WarningInfo where
118 decodeJson json = do
119 obj <- decodeJson json
120 tag <- obj .? "tag"
121 case tag of
122 "WarningInfo" -> do
123 wRange <- obj .? "wRange"
124 wText <- obj .? "wText"
125 pure $ WarningInfo
126 { wRange:wRange
127 , wText:wText
128 }
129
130instance encodeJsonErrorInfo :: EncodeJson ErrorInfo where
131 encodeJson v = case v of
132 ErrorInfo r ->
133 "tag" := "ErrorInfo" ~>
134 "eRange" := r.eRange ~>
135 "eText" := r.eText ~>
136 jsonEmptyObject
137
138instance decodeJsonErrorInfo :: DecodeJson ErrorInfo where
139 decodeJson json = do
140 obj <- decodeJson json
141 tag <- obj .? "tag"
142 case tag of
143 "ErrorInfo" -> do
144 eRange <- obj .? "eRange"
145 eText <- obj .? "eText"
146 pure $ ErrorInfo
147 { eRange:eRange
148 , eText:eText
149 }
150
95instance encodeJsonCompileResult :: EncodeJson CompileResult where 151instance encodeJsonCompileResult :: EncodeJson CompileResult where
96 encodeJson v = case v of 152 encodeJson v = case v of
97 CompileError arg0 arg1 arg2 -> "tag" := "CompileError" ~> "arg0" := arg0 ~> "arg1" := arg1 ~> "arg2" := arg2 ~> jsonEmptyObject 153 CompileError arg0 arg1 arg2 -> "tag" := "CompileError" ~> "arg0" := arg0 ~> "arg1" := arg1 ~> "arg2" := arg2 ~> jsonEmptyObject
98 Compiled arg0 arg1 arg2 arg3 -> "tag" := "Compiled" ~> "arg0" := arg0 ~> "arg1" := arg1 ~> "arg2" := arg2 ~> "arg3" := arg3 ~> jsonEmptyObject 154 Compiled arg0 arg1 arg2 arg3 arg4 -> "tag" := "Compiled" ~> "arg0" := arg0 ~> "arg1" := arg1 ~> "arg2" := arg2 ~> "arg3" := arg3 ~> "arg4" := arg4 ~> jsonEmptyObject
99 155
100instance decodeJsonCompileResult :: DecodeJson CompileResult where 156instance decodeJsonCompileResult :: DecodeJson CompileResult where
101 decodeJson json = do 157 decodeJson json = do
@@ -103,6 +159,10 @@ instance decodeJsonCompileResult :: DecodeJson CompileResult where
103 tag <- obj .? "tag" 159 tag <- obj .? "tag"
104 case tag of 160 case tag of
105 "CompileError" -> CompileError <$> obj .? "arg0" <*> obj .? "arg1" <*> obj .? "arg2" 161 "CompileError" -> CompileError <$> obj .? "arg0" <*> obj .? "arg1" <*> obj .? "arg2"
162<<<<<<< f4af737a0d4a1fd3b3c6babc2c119129df34f77d
106 "Compiled" -> Compiled <$> obj .? "arg0" <*> obj .? "arg1" <*> obj .? "arg2" <*> obj .? "arg3" 163 "Compiled" -> Compiled <$> obj .? "arg0" <*> obj .? "arg1" <*> obj .? "arg2" <*> obj .? "arg3"
107 _ -> unsafeCrashWith "decodeJson @ CompileResult" 164 _ -> unsafeCrashWith "decodeJson @ CompileResult"
165=======
166 "Compiled" -> Compiled <$> obj .? "arg0" <*> obj .? "arg1" <*> obj .? "arg2" <*> obj .? "arg3" <*> obj .? "arg4"
167>>>>>>> update type info to include warnings
108 168
diff --git a/ddl/out/LambdaCube.TypeInfo.swift b/ddl/out/LambdaCube.TypeInfo.swift
index 9304b97..6083382 100644
--- a/ddl/out/LambdaCube.TypeInfo.swift
+++ b/ddl/out/LambdaCube.TypeInfo.swift
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.120020034Z 2// 2016-11-10T15:07:11.972496000000Z
3 3
4enum Range { 4enum Range {
5 case Range(Range_Data) 5 case Range(Range_Data)
@@ -19,9 +19,25 @@ enum TypeInfo {
19 } 19 }
20} 20}
21 21
22enum WarningInfo {
23 case WarningInfo(WarningInfo_Data)
24 struct WarningInfo_Data {
25 var wRange : Range
26 var wText : String
27 }
28}
29
30enum ErrorInfo {
31 case ErrorInfo(ErrorInfo_Data)
32 struct ErrorInfo_Data {
33 var eRange : Range
34 var eText : String
35 }
36}
37
22enum CompileResult { 38enum CompileResult {
23 case CompileError(Array<Range>,String,Array<TypeInfo>) 39 case CompileError(Array<TypeInfo>,Array<WarningInfo>,Array<ErrorInfo>)
24 case Compiled(String,String,Pipeline,Array<TypeInfo>) 40 case Compiled(String,String,Pipeline,Array<TypeInfo>,Array<WarningInfo>)
25} 41}
26 42
27 43
@@ -102,13 +118,35 @@ extension TypeInfo {
102 } 118 }
103 } 119 }
104} 120}
121extension WarningInfo {
122 var toJSON : [String: AnyObject] {
123 switch self {
124 case .WarningInfo(let v):
125 return [ "tag" : "WarningInfo"
126 , "wRange" : v.wRange.toJSON
127 , "wText" : v.wText.toJSON
128 ]
129 }
130 }
131}
132extension ErrorInfo {
133 var toJSON : [String: AnyObject] {
134 switch self {
135 case .ErrorInfo(let v):
136 return [ "tag" : "ErrorInfo"
137 , "eRange" : v.eRange.toJSON
138 , "eText" : v.eText.toJSON
139 ]
140 }
141 }
142}
105extension CompileResult { 143extension CompileResult {
106 var toJSON : [String: AnyObject] { 144 var toJSON : [String: AnyObject] {
107 switch self { 145 switch self {
108 case .CompileError(let arg0, let arg1, let arg2): 146 case .CompileError(let arg0, let arg1, let arg2):
109 return [ "tag" : "CompileError", "arg0" : arg0.toJSON, "arg1" : arg1.toJSON, "arg2" : arg2.toJSON] 147 return [ "tag" : "CompileError", "arg0" : arg0.toJSON, "arg1" : arg1.toJSON, "arg2" : arg2.toJSON]
110 case .Compiled(let arg0, let arg1, let arg2, let arg3): 148 case .Compiled(let arg0, let arg1, let arg2, let arg3, let arg4):
111 return [ "tag" : "Compiled", "arg0" : arg0.toJSON, "arg1" : arg1.toJSON, "arg2" : arg2.toJSON, "arg3" : arg3.toJSON] 149 return [ "tag" : "Compiled", "arg0" : arg0.toJSON, "arg1" : arg1.toJSON, "arg2" : arg2.toJSON, "arg3" : arg3.toJSON, "arg4" : arg4.toJSON]
112 } 150 }
113 } 151 }
114} 152}
@@ -132,6 +170,8 @@ enum Type {
132 case Map(Type,Type) 170 case Map(Type,Type)
133 case Range 171 case Range
134 case TypeInfo 172 case TypeInfo
173 case WarningInfo
174 case ErrorInfo
135 case CompileResult 175 case CompileResult
136} 176}
137 177
diff --git a/ddl/out/LambdaCube.TypeInfo2.hpp b/ddl/out/LambdaCube.TypeInfo2.hpp
index ba80ca0..b8f77a1 100644
--- a/ddl/out/LambdaCube.TypeInfo2.hpp
+++ b/ddl/out/LambdaCube.TypeInfo2.hpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.120020034Z 2// 2016-11-10T15:07:11.972496000000Z
3 3
4#ifndef HEADER_LambdaCube.TypeInfo_H 4#ifndef HEADER_LambdaCube.TypeInfo_H
5#define HEADER_LambdaCube.TypeInfo_H 5#define HEADER_LambdaCube.TypeInfo_H
@@ -39,11 +39,39 @@ public:
39 std::shared_ptr<data::TypeInfo> TypeInfo; 39 std::shared_ptr<data::TypeInfo> TypeInfo;
40}; 40};
41namespace data { 41namespace data {
42 class WarningInfo {
43 public:
44 std::shared_ptr<::Range> wRange;
45 String wText;
46 };
47}
48class WarningInfo {
49public:
50 enum class tag {
51 WarningInfo
52 } tag;
53 std::shared_ptr<data::WarningInfo> WarningInfo;
54};
55namespace data {
56 class ErrorInfo {
57 public:
58 std::shared_ptr<::Range> eRange;
59 String eText;
60 };
61}
62class ErrorInfo {
63public:
64 enum class tag {
65 ErrorInfo
66 } tag;
67 std::shared_ptr<data::ErrorInfo> ErrorInfo;
68};
69namespace data {
42 class CompileError { 70 class CompileError {
43 public: 71 public:
44 std::vector<std::shared_ptr<::Range>> _0; 72 std::vector<std::shared_ptr<::TypeInfo>> _0;
45 String _1; 73 std::vector<std::shared_ptr<::WarningInfo>> _1;
46 std::vector<std::shared_ptr<::TypeInfo>> _2; 74 std::vector<std::shared_ptr<::ErrorInfo>> _2;
47 }; 75 };
48 class Compiled { 76 class Compiled {
49 public: 77 public:
@@ -51,6 +79,7 @@ namespace data {
51 String _1; 79 String _1;
52 std::shared_ptr<::Pipeline> _2; 80 std::shared_ptr<::Pipeline> _2;
53 std::vector<std::shared_ptr<::TypeInfo>> _3; 81 std::vector<std::shared_ptr<::TypeInfo>> _3;
82 std::vector<std::shared_ptr<::WarningInfo>> _4;
54 }; 83 };
55} 84}
56class CompileResult { 85class CompileResult {
diff --git a/ddl/out/TestData.cpp b/ddl/out/TestData.cpp
index 6a686a9..58db58d 100644
--- a/ddl/out/TestData.cpp
+++ b/ddl/out/TestData.cpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4#include "TestData.hpp" 4#include "TestData.hpp"
5template<> json toJSON<std::shared_ptr<ClientInfo>>(std::shared_ptr<ClientInfo> &v) { 5template<> json toJSON<std::shared_ptr<ClientInfo>>(std::shared_ptr<ClientInfo> &v) {
diff --git a/ddl/out/TestData.cs b/ddl/out/TestData.cs
index 3c4b2bf..42bfbff 100644
--- a/ddl/out/TestData.cs
+++ b/ddl/out/TestData.cs
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4using System; 4using System;
5using System.Linq; 5using System.Linq;
diff --git a/ddl/out/TestData.hpp b/ddl/out/TestData.hpp
index c66e828..1045578 100644
--- a/ddl/out/TestData.hpp
+++ b/ddl/out/TestData.hpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4#ifndef HEADER_TestData_H 4#ifndef HEADER_TestData_H
5#define HEADER_TestData_H 5#define HEADER_TestData_H
diff --git a/ddl/out/TestData.hs b/ddl/out/TestData.hs
index e2a85a3..f2c6101 100644
--- a/ddl/out/TestData.hs
+++ b/ddl/out/TestData.hs
@@ -1,5 +1,5 @@
1-- generated file, do not modify! 1-- generated file, do not modify!
2-- 2016-09-15T19:44:48.147167874Z 2-- 2016-11-10T15:07:12.061252000000Z
3 3
4{-# LANGUAGE OverloadedStrings, RecordWildCards #-} 4{-# LANGUAGE OverloadedStrings, RecordWildCards #-}
5module TestData where 5module TestData where
diff --git a/ddl/out/TestData.purs b/ddl/out/TestData.purs
index 2ac59b8..7d3e82a 100644
--- a/ddl/out/TestData.purs
+++ b/ddl/out/TestData.purs
@@ -1,5 +1,5 @@
1-- generated file, do not modify! 1-- generated file, do not modify!
2-- 2016-09-15T19:44:48.147167874Z 2-- 2016-11-10T15:07:12.061252000000Z
3 3
4module TestData where 4module TestData where
5import Prelude 5import Prelude
diff --git a/ddl/out/TestData.swift b/ddl/out/TestData.swift
index 3fe771a..aef2069 100644
--- a/ddl/out/TestData.swift
+++ b/ddl/out/TestData.swift
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4enum ClientInfo { 4enum ClientInfo {
5 case ClientInfo(ClientInfo_Data) 5 case ClientInfo(ClientInfo_Data)
diff --git a/ddl/out/TestData2.hpp b/ddl/out/TestData2.hpp
index d39d5fa..462b05f 100644
--- a/ddl/out/TestData2.hpp
+++ b/ddl/out/TestData2.hpp
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4#ifndef HEADER_TestData_H 4#ifndef HEADER_TestData_H
5#define HEADER_TestData_H 5#define HEADER_TestData_H
diff --git a/ddl/out/java/LambdaCube/IR/AccumulationContext.java b/ddl/out/java/LambdaCube/IR/AccumulationContext.java
index 5f788e2..5da0b75 100644
--- a/ddl/out/java/LambdaCube/IR/AccumulationContext.java
+++ b/ddl/out/java/LambdaCube/IR/AccumulationContext.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/ArrayValue.java b/ddl/out/java/LambdaCube/IR/ArrayValue.java
index d21bd4f..dbc7ebf 100644
--- a/ddl/out/java/LambdaCube/IR/ArrayValue.java
+++ b/ddl/out/java/LambdaCube/IR/ArrayValue.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/Backend.java b/ddl/out/java/LambdaCube/IR/Backend.java
index 513f8c0..b0c76ca 100644
--- a/ddl/out/java/LambdaCube/IR/Backend.java
+++ b/ddl/out/java/LambdaCube/IR/Backend.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/BlendEquation.java b/ddl/out/java/LambdaCube/IR/BlendEquation.java
index 3f9ee93..b866f91 100644
--- a/ddl/out/java/LambdaCube/IR/BlendEquation.java
+++ b/ddl/out/java/LambdaCube/IR/BlendEquation.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/Blending.java b/ddl/out/java/LambdaCube/IR/Blending.java
index aee35f5..3483aa7 100644
--- a/ddl/out/java/LambdaCube/IR/Blending.java
+++ b/ddl/out/java/LambdaCube/IR/Blending.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/BlendingFactor.java b/ddl/out/java/LambdaCube/IR/BlendingFactor.java
index d7bdefb..8ecccc9 100644
--- a/ddl/out/java/LambdaCube/IR/BlendingFactor.java
+++ b/ddl/out/java/LambdaCube/IR/BlendingFactor.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/ClearImage.java b/ddl/out/java/LambdaCube/IR/ClearImage.java
index d3a55e0..a4e2dcf 100644
--- a/ddl/out/java/LambdaCube/IR/ClearImage.java
+++ b/ddl/out/java/LambdaCube/IR/ClearImage.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/ColorArity.java b/ddl/out/java/LambdaCube/IR/ColorArity.java
index be2380b..2e38368 100644
--- a/ddl/out/java/LambdaCube/IR/ColorArity.java
+++ b/ddl/out/java/LambdaCube/IR/ColorArity.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/Command.java b/ddl/out/java/LambdaCube/IR/Command.java
index 7a3947a..e960d62 100644
--- a/ddl/out/java/LambdaCube/IR/Command.java
+++ b/ddl/out/java/LambdaCube/IR/Command.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/ComparisonFunction.java b/ddl/out/java/LambdaCube/IR/ComparisonFunction.java
index 6040a6a..e99d736 100644
--- a/ddl/out/java/LambdaCube/IR/ComparisonFunction.java
+++ b/ddl/out/java/LambdaCube/IR/ComparisonFunction.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/CullMode.java b/ddl/out/java/LambdaCube/IR/CullMode.java
index ac060b7..24498ae 100644
--- a/ddl/out/java/LambdaCube/IR/CullMode.java
+++ b/ddl/out/java/LambdaCube/IR/CullMode.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/EdgeMode.java b/ddl/out/java/LambdaCube/IR/EdgeMode.java
index 40418c1..e06e665 100644
--- a/ddl/out/java/LambdaCube/IR/EdgeMode.java
+++ b/ddl/out/java/LambdaCube/IR/EdgeMode.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/FetchPrimitive.java b/ddl/out/java/LambdaCube/IR/FetchPrimitive.java
index d7fc693..ab90181 100644
--- a/ddl/out/java/LambdaCube/IR/FetchPrimitive.java
+++ b/ddl/out/java/LambdaCube/IR/FetchPrimitive.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/Filter.java b/ddl/out/java/LambdaCube/IR/Filter.java
index 2333f6b..0fcf88a 100644
--- a/ddl/out/java/LambdaCube/IR/Filter.java
+++ b/ddl/out/java/LambdaCube/IR/Filter.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/FragmentOperation.java b/ddl/out/java/LambdaCube/IR/FragmentOperation.java
index 885e2be..897b656 100644
--- a/ddl/out/java/LambdaCube/IR/FragmentOperation.java
+++ b/ddl/out/java/LambdaCube/IR/FragmentOperation.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/FrontFace.java b/ddl/out/java/LambdaCube/IR/FrontFace.java
index da9347b..7ad6264 100644
--- a/ddl/out/java/LambdaCube/IR/FrontFace.java
+++ b/ddl/out/java/LambdaCube/IR/FrontFace.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/ImageRef.java b/ddl/out/java/LambdaCube/IR/ImageRef.java
index 0173d9c..4eef01b 100644
--- a/ddl/out/java/LambdaCube/IR/ImageRef.java
+++ b/ddl/out/java/LambdaCube/IR/ImageRef.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/ImageSemantic.java b/ddl/out/java/LambdaCube/IR/ImageSemantic.java
index 4706288..255167c 100644
--- a/ddl/out/java/LambdaCube/IR/ImageSemantic.java
+++ b/ddl/out/java/LambdaCube/IR/ImageSemantic.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/InputType.java b/ddl/out/java/LambdaCube/IR/InputType.java
index f66a1d5..a1a927a 100644
--- a/ddl/out/java/LambdaCube/IR/InputType.java
+++ b/ddl/out/java/LambdaCube/IR/InputType.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/JSON.java b/ddl/out/java/LambdaCube/IR/JSON.java
index 89ec1ef..b9ec62f 100644
--- a/ddl/out/java/LambdaCube/IR/JSON.java
+++ b/ddl/out/java/LambdaCube/IR/JSON.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/LogicOperation.java b/ddl/out/java/LambdaCube/IR/LogicOperation.java
index 568c08c..1239717 100644
--- a/ddl/out/java/LambdaCube/IR/LogicOperation.java
+++ b/ddl/out/java/LambdaCube/IR/LogicOperation.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/MipMap.java b/ddl/out/java/LambdaCube/IR/MipMap.java
index 24be83e..fbce936 100644
--- a/ddl/out/java/LambdaCube/IR/MipMap.java
+++ b/ddl/out/java/LambdaCube/IR/MipMap.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/OutputPrimitive.java b/ddl/out/java/LambdaCube/IR/OutputPrimitive.java
index d5f88d2..6320101 100644
--- a/ddl/out/java/LambdaCube/IR/OutputPrimitive.java
+++ b/ddl/out/java/LambdaCube/IR/OutputPrimitive.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/Parameter.java b/ddl/out/java/LambdaCube/IR/Parameter.java
index 6a74e24..ca518b9 100644
--- a/ddl/out/java/LambdaCube/IR/Parameter.java
+++ b/ddl/out/java/LambdaCube/IR/Parameter.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/Pipeline.java b/ddl/out/java/LambdaCube/IR/Pipeline.java
index e0c06ba..b7e2d87 100644
--- a/ddl/out/java/LambdaCube/IR/Pipeline.java
+++ b/ddl/out/java/LambdaCube/IR/Pipeline.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/PointSize.java b/ddl/out/java/LambdaCube/IR/PointSize.java
index 2231d43..b9c9bd0 100644
--- a/ddl/out/java/LambdaCube/IR/PointSize.java
+++ b/ddl/out/java/LambdaCube/IR/PointSize.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/PointSpriteCoordOrigin.java b/ddl/out/java/LambdaCube/IR/PointSpriteCoordOrigin.java
index b4983f5..f7cc8d0 100644
--- a/ddl/out/java/LambdaCube/IR/PointSpriteCoordOrigin.java
+++ b/ddl/out/java/LambdaCube/IR/PointSpriteCoordOrigin.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/PolygonMode.java b/ddl/out/java/LambdaCube/IR/PolygonMode.java
index e341e7f..9cc38f9 100644
--- a/ddl/out/java/LambdaCube/IR/PolygonMode.java
+++ b/ddl/out/java/LambdaCube/IR/PolygonMode.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/PolygonOffset.java b/ddl/out/java/LambdaCube/IR/PolygonOffset.java
index 4a7d12d..f8706b2 100644
--- a/ddl/out/java/LambdaCube/IR/PolygonOffset.java
+++ b/ddl/out/java/LambdaCube/IR/PolygonOffset.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/Program.java b/ddl/out/java/LambdaCube/IR/Program.java
index b64d543..da78920 100644
--- a/ddl/out/java/LambdaCube/IR/Program.java
+++ b/ddl/out/java/LambdaCube/IR/Program.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/ProvokingVertex.java b/ddl/out/java/LambdaCube/IR/ProvokingVertex.java
index 946cb1a..055fab5 100644
--- a/ddl/out/java/LambdaCube/IR/ProvokingVertex.java
+++ b/ddl/out/java/LambdaCube/IR/ProvokingVertex.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/RasterContext.java b/ddl/out/java/LambdaCube/IR/RasterContext.java
index 4a131cb..ebb815b 100644
--- a/ddl/out/java/LambdaCube/IR/RasterContext.java
+++ b/ddl/out/java/LambdaCube/IR/RasterContext.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/RenderTarget.java b/ddl/out/java/LambdaCube/IR/RenderTarget.java
index c2b4d78..3a80f7c 100644
--- a/ddl/out/java/LambdaCube/IR/RenderTarget.java
+++ b/ddl/out/java/LambdaCube/IR/RenderTarget.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/SamplerDescriptor.java b/ddl/out/java/LambdaCube/IR/SamplerDescriptor.java
index 4649eee..a26574d 100644
--- a/ddl/out/java/LambdaCube/IR/SamplerDescriptor.java
+++ b/ddl/out/java/LambdaCube/IR/SamplerDescriptor.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/Slot.java b/ddl/out/java/LambdaCube/IR/Slot.java
index a881be7..79b3696 100644
--- a/ddl/out/java/LambdaCube/IR/Slot.java
+++ b/ddl/out/java/LambdaCube/IR/Slot.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/StencilOperation.java b/ddl/out/java/LambdaCube/IR/StencilOperation.java
index 1c270dd..6ce9b3f 100644
--- a/ddl/out/java/LambdaCube/IR/StencilOperation.java
+++ b/ddl/out/java/LambdaCube/IR/StencilOperation.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/StencilOps.java b/ddl/out/java/LambdaCube/IR/StencilOps.java
index 8408016..33ec375 100644
--- a/ddl/out/java/LambdaCube/IR/StencilOps.java
+++ b/ddl/out/java/LambdaCube/IR/StencilOps.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/StencilTest.java b/ddl/out/java/LambdaCube/IR/StencilTest.java
index 3adddc2..0678931 100644
--- a/ddl/out/java/LambdaCube/IR/StencilTest.java
+++ b/ddl/out/java/LambdaCube/IR/StencilTest.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/StencilTests.java b/ddl/out/java/LambdaCube/IR/StencilTests.java
index e08a07f..823b9e8 100644
--- a/ddl/out/java/LambdaCube/IR/StencilTests.java
+++ b/ddl/out/java/LambdaCube/IR/StencilTests.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/StreamData.java b/ddl/out/java/LambdaCube/IR/StreamData.java
index 2e821a5..d63dc08 100644
--- a/ddl/out/java/LambdaCube/IR/StreamData.java
+++ b/ddl/out/java/LambdaCube/IR/StreamData.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/TargetItem.java b/ddl/out/java/LambdaCube/IR/TargetItem.java
index b602b56..45b58d1 100644
--- a/ddl/out/java/LambdaCube/IR/TargetItem.java
+++ b/ddl/out/java/LambdaCube/IR/TargetItem.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/TextureDataType.java b/ddl/out/java/LambdaCube/IR/TextureDataType.java
index 0d889d8..a345db7 100644
--- a/ddl/out/java/LambdaCube/IR/TextureDataType.java
+++ b/ddl/out/java/LambdaCube/IR/TextureDataType.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/TextureDescriptor.java b/ddl/out/java/LambdaCube/IR/TextureDescriptor.java
index 368e8f0..cbcddce 100644
--- a/ddl/out/java/LambdaCube/IR/TextureDescriptor.java
+++ b/ddl/out/java/LambdaCube/IR/TextureDescriptor.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/TextureType.java b/ddl/out/java/LambdaCube/IR/TextureType.java
index 451ad52..aa742e1 100644
--- a/ddl/out/java/LambdaCube/IR/TextureType.java
+++ b/ddl/out/java/LambdaCube/IR/TextureType.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/IR/Value.java b/ddl/out/java/LambdaCube/IR/Value.java
index 294a4db..e9fc6be 100644
--- a/ddl/out/java/LambdaCube/IR/Value.java
+++ b/ddl/out/java/LambdaCube/IR/Value.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:47.624123918Z 2// 2016-11-10T15:07:10.798971000000Z
3 3
4package LambdaCube.IR; 4package LambdaCube.IR;
5 5
diff --git a/ddl/out/java/LambdaCube/Mesh/JSON.java b/ddl/out/java/LambdaCube/Mesh/JSON.java
index a52ea1f..0b29f5b 100644
--- a/ddl/out/java/LambdaCube/Mesh/JSON.java
+++ b/ddl/out/java/LambdaCube/Mesh/JSON.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.078244539Z 2// 2016-11-10T15:07:11.866163000000Z
3 3
4package LambdaCube.Mesh; 4package LambdaCube.Mesh;
5 5
diff --git a/ddl/out/java/LambdaCube/Mesh/Mesh.java b/ddl/out/java/LambdaCube/Mesh/Mesh.java
index d5a649f..271bf0b 100644
--- a/ddl/out/java/LambdaCube/Mesh/Mesh.java
+++ b/ddl/out/java/LambdaCube/Mesh/Mesh.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.078244539Z 2// 2016-11-10T15:07:11.866163000000Z
3 3
4package LambdaCube.Mesh; 4package LambdaCube.Mesh;
5 5
diff --git a/ddl/out/java/LambdaCube/Mesh/MeshAttribute.java b/ddl/out/java/LambdaCube/Mesh/MeshAttribute.java
index 68fa1bc..9d06b72 100644
--- a/ddl/out/java/LambdaCube/Mesh/MeshAttribute.java
+++ b/ddl/out/java/LambdaCube/Mesh/MeshAttribute.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.078244539Z 2// 2016-11-10T15:07:11.866163000000Z
3 3
4package LambdaCube.Mesh; 4package LambdaCube.Mesh;
5 5
diff --git a/ddl/out/java/LambdaCube/Mesh/MeshPrimitive.java b/ddl/out/java/LambdaCube/Mesh/MeshPrimitive.java
index 116cf4a..974d8ce 100644
--- a/ddl/out/java/LambdaCube/Mesh/MeshPrimitive.java
+++ b/ddl/out/java/LambdaCube/Mesh/MeshPrimitive.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.078244539Z 2// 2016-11-10T15:07:11.866163000000Z
3 3
4package LambdaCube.Mesh; 4package LambdaCube.Mesh;
5 5
diff --git a/ddl/out/java/LambdaCube/PipelineSchema/JSON.java b/ddl/out/java/LambdaCube/PipelineSchema/JSON.java
index fd2a905..5051614 100644
--- a/ddl/out/java/LambdaCube/PipelineSchema/JSON.java
+++ b/ddl/out/java/LambdaCube/PipelineSchema/JSON.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.052942639Z 2// 2016-11-10T15:07:11.805936000000Z
3 3
4package LambdaCube.PipelineSchema; 4package LambdaCube.PipelineSchema;
5 5
diff --git a/ddl/out/java/LambdaCube/PipelineSchema/ObjectArraySchema.java b/ddl/out/java/LambdaCube/PipelineSchema/ObjectArraySchema.java
index 6ed3627..97e9ac2 100644
--- a/ddl/out/java/LambdaCube/PipelineSchema/ObjectArraySchema.java
+++ b/ddl/out/java/LambdaCube/PipelineSchema/ObjectArraySchema.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.052942639Z 2// 2016-11-10T15:07:11.805936000000Z
3 3
4package LambdaCube.PipelineSchema; 4package LambdaCube.PipelineSchema;
5 5
diff --git a/ddl/out/java/LambdaCube/PipelineSchema/PipelineSchema.java b/ddl/out/java/LambdaCube/PipelineSchema/PipelineSchema.java
index 39fb6eb..9553424 100644
--- a/ddl/out/java/LambdaCube/PipelineSchema/PipelineSchema.java
+++ b/ddl/out/java/LambdaCube/PipelineSchema/PipelineSchema.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.052942639Z 2// 2016-11-10T15:07:11.805936000000Z
3 3
4package LambdaCube.PipelineSchema; 4package LambdaCube.PipelineSchema;
5 5
diff --git a/ddl/out/java/LambdaCube/PipelineSchema/StreamType.java b/ddl/out/java/LambdaCube/PipelineSchema/StreamType.java
index debbb01..42f388e 100644
--- a/ddl/out/java/LambdaCube/PipelineSchema/StreamType.java
+++ b/ddl/out/java/LambdaCube/PipelineSchema/StreamType.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.052942639Z 2// 2016-11-10T15:07:11.805936000000Z
3 3
4package LambdaCube.PipelineSchema; 4package LambdaCube.PipelineSchema;
5 5
diff --git a/ddl/out/java/LambdaCube/TypeInfo/CompileResult.java b/ddl/out/java/LambdaCube/TypeInfo/CompileResult.java
index 91653b5..cf66ce9 100644
--- a/ddl/out/java/LambdaCube/TypeInfo/CompileResult.java
+++ b/ddl/out/java/LambdaCube/TypeInfo/CompileResult.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.120020034Z 2// 2016-11-10T15:07:11.972496000000Z
3 3
4package LambdaCube.TypeInfo; 4package LambdaCube.TypeInfo;
5 5
@@ -17,9 +17,9 @@ public class CompileResult {
17 public Tag tag; 17 public Tag tag;
18 18
19 public class CompileError_ extends CompileResult { 19 public class CompileError_ extends CompileResult {
20 public ArrayList<Range> _0; 20 public ArrayList<TypeInfo> _0;
21 public String _1; 21 public ArrayList<WarningInfo> _1;
22 public ArrayList<TypeInfo> _2; 22 public ArrayList<ErrorInfo> _2;
23 public CompileError_() { tag = CompileResult.Tag.CompileError; } 23 public CompileError_() { tag = CompileResult.Tag.CompileError; }
24 } 24 }
25 public class Compiled_ extends CompileResult { 25 public class Compiled_ extends CompileResult {
@@ -27,6 +27,7 @@ public class CompileResult {
27 public String _1; 27 public String _1;
28 public Pipeline _2; 28 public Pipeline _2;
29 public ArrayList<TypeInfo> _3; 29 public ArrayList<TypeInfo> _3;
30 public ArrayList<WarningInfo> _4;
30 public Compiled_() { tag = CompileResult.Tag.Compiled; } 31 public Compiled_() { tag = CompileResult.Tag.Compiled; }
31 } 32 }
32} 33}
diff --git a/ddl/out/java/LambdaCube/TypeInfo/ErrorInfo.java b/ddl/out/java/LambdaCube/TypeInfo/ErrorInfo.java
new file mode 100644
index 0000000..a59fc81
--- /dev/null
+++ b/ddl/out/java/LambdaCube/TypeInfo/ErrorInfo.java
@@ -0,0 +1,24 @@
1// generated file, do not modify!
2// 2016-11-10T15:07:11.972496000000Z
3
4package LambdaCube.TypeInfo;
5
6import java.util.ArrayList;
7import java.util.HashMap;
8import RT.*;
9
10import LambdaCube.IR.*;
11
12public class ErrorInfo {
13 public enum Tag {
14 ErrorInfo
15 }
16 public Tag tag;
17
18 public class ErrorInfo_ extends ErrorInfo {
19 public Range eRange;
20 public String eText;
21 public ErrorInfo_() { tag = ErrorInfo.Tag.ErrorInfo; }
22 }
23}
24
diff --git a/ddl/out/java/LambdaCube/TypeInfo/JSON.java b/ddl/out/java/LambdaCube/TypeInfo/JSON.java
index e13fa63..458656c 100644
--- a/ddl/out/java/LambdaCube/TypeInfo/JSON.java
+++ b/ddl/out/java/LambdaCube/TypeInfo/JSON.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.120020034Z 2// 2016-11-10T15:07:11.972496000000Z
3 3
4package LambdaCube.TypeInfo; 4package LambdaCube.TypeInfo;
5 5
@@ -17,23 +17,26 @@ public class JSON {
17 public enum Type { 17 public enum Type {
18 Int, 18 Int,
19 String, 19 String,
20 Array_Range, 20 Array_ErrorInfo,
21 Array_TypeInfo, 21 Array_TypeInfo,
22 Array_WarningInfo,
22 CompileResult, 23 CompileResult,
24 ErrorInfo,
23 Pipeline, 25 Pipeline,
24 Range, 26 Range,
25 TypeInfo 27 TypeInfo,
28 WarningInfo
26 } 29 }
27 30
28 public static Object fromJSON(Type type, Object rawObj) throws JSONException, Exception { 31 public static Object fromJSON(Type type, Object rawObj) throws JSONException, Exception {
29 switch (type) { 32 switch (type) {
30 case Int: return ((Number)rawObj).intValue(); 33 case Int: return ((Number)rawObj).intValue();
31 case String: return (String)rawObj; 34 case String: return (String)rawObj;
32 case Array_Range: { 35 case Array_ErrorInfo: {
33 JSONArray obj = (JSONArray)rawObj; 36 JSONArray obj = (JSONArray)rawObj;
34 ArrayList<Range> v = new ArrayList<Range> (); 37 ArrayList<ErrorInfo> v = new ArrayList<ErrorInfo> ();
35 for (int i = 0; i < obj.length(); i++) { 38 for (int i = 0; i < obj.length(); i++) {
36 v.add((Range)fromJSON (Type.Range, obj.get(i))); 39 v.add((ErrorInfo)fromJSON (Type.ErrorInfo, obj.get(i)));
37 } 40 }
38 return v; 41 return v;
39 } 42 }
@@ -45,6 +48,14 @@ public class JSON {
45 } 48 }
46 return v; 49 return v;
47 } 50 }
51 case Array_WarningInfo: {
52 JSONArray obj = (JSONArray)rawObj;
53 ArrayList<WarningInfo> v = new ArrayList<WarningInfo> ();
54 for (int i = 0; i < obj.length(); i++) {
55 v.add((WarningInfo)fromJSON (Type.WarningInfo, obj.get(i)));
56 }
57 return v;
58 }
48 59
49 case Range: { 60 case Range: {
50 JSONObject obj = (JSONObject)rawObj; 61 JSONObject obj = (JSONObject)rawObj;
@@ -74,15 +85,41 @@ public class JSON {
74 default: throw new Exception("unknown constructor: " + tag); 85 default: throw new Exception("unknown constructor: " + tag);
75 } 86 }
76 } 87 }
88 case WarningInfo: {
89 JSONObject obj = (JSONObject)rawObj;
90 String tag = obj.getString("tag");
91 switch (tag) {
92 case "WarningInfo": {
93 WarningInfo.WarningInfo_ tv = new WarningInfo().new WarningInfo_();
94 tv.wRange = (Range)fromJSON(Type.Range,obj.get("wRange"));
95 tv.wText = (String)fromJSON(Type.String,obj.get("wText"));
96 return tv;
97 }
98 default: throw new Exception("unknown constructor: " + tag);
99 }
100 }
101 case ErrorInfo: {
102 JSONObject obj = (JSONObject)rawObj;
103 String tag = obj.getString("tag");
104 switch (tag) {
105 case "ErrorInfo": {
106 ErrorInfo.ErrorInfo_ tv = new ErrorInfo().new ErrorInfo_();
107 tv.eRange = (Range)fromJSON(Type.Range,obj.get("eRange"));
108 tv.eText = (String)fromJSON(Type.String,obj.get("eText"));
109 return tv;
110 }
111 default: throw new Exception("unknown constructor: " + tag);
112 }
113 }
77 case CompileResult: { 114 case CompileResult: {
78 JSONObject obj = (JSONObject)rawObj; 115 JSONObject obj = (JSONObject)rawObj;
79 String tag = obj.getString("tag"); 116 String tag = obj.getString("tag");
80 switch (tag) { 117 switch (tag) {
81 case "CompileError": { 118 case "CompileError": {
82 CompileResult.CompileError_ tv = new CompileResult().new CompileError_(); 119 CompileResult.CompileError_ tv = new CompileResult().new CompileError_();
83 tv._0 = (ArrayList<Range>)fromJSON(Type.Array_Range,obj.get("arg0")); 120 tv._0 = (ArrayList<TypeInfo>)fromJSON(Type.Array_TypeInfo,obj.get("arg0"));
84 tv._1 = (String)fromJSON(Type.String,obj.get("arg1")); 121 tv._1 = (ArrayList<WarningInfo>)fromJSON(Type.Array_WarningInfo,obj.get("arg1"));
85 tv._2 = (ArrayList<TypeInfo>)fromJSON(Type.Array_TypeInfo,obj.get("arg2")); 122 tv._2 = (ArrayList<ErrorInfo>)fromJSON(Type.Array_ErrorInfo,obj.get("arg2"));
86 return tv; 123 return tv;
87 } 124 }
88 case "Compiled": { 125 case "Compiled": {
@@ -91,6 +128,7 @@ public class JSON {
91 tv._1 = (String)fromJSON(Type.String,obj.get("arg1")); 128 tv._1 = (String)fromJSON(Type.String,obj.get("arg1"));
92 tv._2 = (Pipeline)fromJSON(Type.Pipeline,obj.get("arg2")); 129 tv._2 = (Pipeline)fromJSON(Type.Pipeline,obj.get("arg2"));
93 tv._3 = (ArrayList<TypeInfo>)fromJSON(Type.Array_TypeInfo,obj.get("arg3")); 130 tv._3 = (ArrayList<TypeInfo>)fromJSON(Type.Array_TypeInfo,obj.get("arg3"));
131 tv._4 = (ArrayList<WarningInfo>)fromJSON(Type.Array_WarningInfo,obj.get("arg4"));
94 return tv; 132 return tv;
95 } 133 }
96 default: throw new Exception("unknown constructor: " + tag); 134 default: throw new Exception("unknown constructor: " + tag);
@@ -134,6 +172,36 @@ public class JSON {
134 } 172 }
135 return obj; 173 return obj;
136 } 174 }
175 case WarningInfo: {
176 WarningInfo v = (WarningInfo)rawObj;
177 JSONObject obj = new JSONObject();
178 switch (v.tag) {
179 case WarningInfo:
180 obj.put("tag", "WarningInfo");
181 {
182 WarningInfo.WarningInfo_ tv = (WarningInfo.WarningInfo_)v;
183 obj.put("wRange", toJSON(Type.Range,tv.wRange));
184 obj.put("wText", toJSON(Type.String,tv.wText));
185 }
186 break;
187 }
188 return obj;
189 }
190 case ErrorInfo: {
191 ErrorInfo v = (ErrorInfo)rawObj;
192 JSONObject obj = new JSONObject();
193 switch (v.tag) {
194 case ErrorInfo:
195 obj.put("tag", "ErrorInfo");
196 {
197 ErrorInfo.ErrorInfo_ tv = (ErrorInfo.ErrorInfo_)v;
198 obj.put("eRange", toJSON(Type.Range,tv.eRange));
199 obj.put("eText", toJSON(Type.String,tv.eText));
200 }
201 break;
202 }
203 return obj;
204 }
137 case CompileResult: { 205 case CompileResult: {
138 CompileResult v = (CompileResult)rawObj; 206 CompileResult v = (CompileResult)rawObj;
139 JSONObject obj = new JSONObject(); 207 JSONObject obj = new JSONObject();
@@ -142,9 +210,9 @@ public class JSON {
142 obj.put("tag", "CompileError"); 210 obj.put("tag", "CompileError");
143 { 211 {
144 CompileResult.CompileError_ tv = (CompileResult.CompileError_)v; 212 CompileResult.CompileError_ tv = (CompileResult.CompileError_)v;
145 obj.put("arg0", toJSON(Type.Array_Range,tv._0)); 213 obj.put("arg0", toJSON(Type.Array_TypeInfo,tv._0));
146 obj.put("arg1", toJSON(Type.String,tv._1)); 214 obj.put("arg1", toJSON(Type.Array_WarningInfo,tv._1));
147 obj.put("arg2", toJSON(Type.Array_TypeInfo,tv._2)); 215 obj.put("arg2", toJSON(Type.Array_ErrorInfo,tv._2));
148 } 216 }
149 break; 217 break;
150 case Compiled: 218 case Compiled:
@@ -155,6 +223,7 @@ public class JSON {
155 obj.put("arg1", toJSON(Type.String,tv._1)); 223 obj.put("arg1", toJSON(Type.String,tv._1));
156 obj.put("arg2", toJSON(Type.Pipeline,tv._2)); 224 obj.put("arg2", toJSON(Type.Pipeline,tv._2));
157 obj.put("arg3", toJSON(Type.Array_TypeInfo,tv._3)); 225 obj.put("arg3", toJSON(Type.Array_TypeInfo,tv._3));
226 obj.put("arg4", toJSON(Type.Array_WarningInfo,tv._4));
158 } 227 }
159 break; 228 break;
160 } 229 }
@@ -163,11 +232,11 @@ public class JSON {
163 232
164 case Int: { return rawObj; } 233 case Int: { return rawObj; }
165 case String: { return rawObj; } 234 case String: { return rawObj; }
166 case Array_Range: { 235 case Array_ErrorInfo: {
167 ArrayList<Range> v = (ArrayList<Range>)rawObj; 236 ArrayList<ErrorInfo> v = (ArrayList<ErrorInfo>)rawObj;
168 JSONArray obj = new JSONArray(); 237 JSONArray obj = new JSONArray();
169 for(Range i : v) { 238 for(ErrorInfo i : v) {
170 obj.put(toJSON(Type.Range,i)); 239 obj.put(toJSON(Type.ErrorInfo,i));
171 } 240 }
172 return obj; 241 return obj;
173 } 242 }
@@ -179,6 +248,14 @@ public class JSON {
179 } 248 }
180 return obj; 249 return obj;
181 } 250 }
251 case Array_WarningInfo: {
252 ArrayList<WarningInfo> v = (ArrayList<WarningInfo>)rawObj;
253 JSONArray obj = new JSONArray();
254 for(WarningInfo i : v) {
255 obj.put(toJSON(Type.WarningInfo,i));
256 }
257 return obj;
258 }
182 } 259 }
183 throw new Exception("unknown type"); 260 throw new Exception("unknown type");
184 } 261 }
diff --git a/ddl/out/java/LambdaCube/TypeInfo/Range.java b/ddl/out/java/LambdaCube/TypeInfo/Range.java
index 8c63d75..e5db6f2 100644
--- a/ddl/out/java/LambdaCube/TypeInfo/Range.java
+++ b/ddl/out/java/LambdaCube/TypeInfo/Range.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.120020034Z 2// 2016-11-10T15:07:11.972496000000Z
3 3
4package LambdaCube.TypeInfo; 4package LambdaCube.TypeInfo;
5 5
diff --git a/ddl/out/java/LambdaCube/TypeInfo/TypeInfo.java b/ddl/out/java/LambdaCube/TypeInfo/TypeInfo.java
index 8e86f07..9cf2ec4 100644
--- a/ddl/out/java/LambdaCube/TypeInfo/TypeInfo.java
+++ b/ddl/out/java/LambdaCube/TypeInfo/TypeInfo.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.120020034Z 2// 2016-11-10T15:07:11.972496000000Z
3 3
4package LambdaCube.TypeInfo; 4package LambdaCube.TypeInfo;
5 5
diff --git a/ddl/out/java/LambdaCube/TypeInfo/WarningInfo.java b/ddl/out/java/LambdaCube/TypeInfo/WarningInfo.java
new file mode 100644
index 0000000..a6be28f
--- /dev/null
+++ b/ddl/out/java/LambdaCube/TypeInfo/WarningInfo.java
@@ -0,0 +1,24 @@
1// generated file, do not modify!
2// 2016-11-10T15:07:11.972496000000Z
3
4package LambdaCube.TypeInfo;
5
6import java.util.ArrayList;
7import java.util.HashMap;
8import RT.*;
9
10import LambdaCube.IR.*;
11
12public class WarningInfo {
13 public enum Tag {
14 WarningInfo
15 }
16 public Tag tag;
17
18 public class WarningInfo_ extends WarningInfo {
19 public Range wRange;
20 public String wText;
21 public WarningInfo_() { tag = WarningInfo.Tag.WarningInfo; }
22 }
23}
24
diff --git a/ddl/out/java/TestData/ClientInfo.java b/ddl/out/java/TestData/ClientInfo.java
index 0b78ff0..53bba37 100644
--- a/ddl/out/java/TestData/ClientInfo.java
+++ b/ddl/out/java/TestData/ClientInfo.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4package TestData; 4package TestData;
5 5
diff --git a/ddl/out/java/TestData/Frame.java b/ddl/out/java/TestData/Frame.java
index 1fe44d9..c75409f 100644
--- a/ddl/out/java/TestData/Frame.java
+++ b/ddl/out/java/TestData/Frame.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4package TestData; 4package TestData;
5 5
diff --git a/ddl/out/java/TestData/FrameResult.java b/ddl/out/java/TestData/FrameResult.java
index 03f6eca..5f9a11e 100644
--- a/ddl/out/java/TestData/FrameResult.java
+++ b/ddl/out/java/TestData/FrameResult.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4package TestData; 4package TestData;
5 5
diff --git a/ddl/out/java/TestData/JSON.java b/ddl/out/java/TestData/JSON.java
index ce9772c..8bc4e2a 100644
--- a/ddl/out/java/TestData/JSON.java
+++ b/ddl/out/java/TestData/JSON.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4package TestData; 4package TestData;
5 5
diff --git a/ddl/out/java/TestData/PipelineInfo.java b/ddl/out/java/TestData/PipelineInfo.java
index 4b0f537..1ab0bce 100644
--- a/ddl/out/java/TestData/PipelineInfo.java
+++ b/ddl/out/java/TestData/PipelineInfo.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4package TestData; 4package TestData;
5 5
diff --git a/ddl/out/java/TestData/RenderJob.java b/ddl/out/java/TestData/RenderJob.java
index dfcb76c..016e531 100644
--- a/ddl/out/java/TestData/RenderJob.java
+++ b/ddl/out/java/TestData/RenderJob.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4package TestData; 4package TestData;
5 5
diff --git a/ddl/out/java/TestData/RenderJobResult.java b/ddl/out/java/TestData/RenderJobResult.java
index e9b0352..236198a 100644
--- a/ddl/out/java/TestData/RenderJobResult.java
+++ b/ddl/out/java/TestData/RenderJobResult.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4package TestData; 4package TestData;
5 5
diff --git a/ddl/out/java/TestData/Scene.java b/ddl/out/java/TestData/Scene.java
index 1a37243..50da7cc 100644
--- a/ddl/out/java/TestData/Scene.java
+++ b/ddl/out/java/TestData/Scene.java
@@ -1,5 +1,5 @@
1// generated file, do not modify! 1// generated file, do not modify!
2// 2016-09-15T19:44:48.147167874Z 2// 2016-11-10T15:07:12.061252000000Z
3 3
4package TestData; 4package TestData;
5 5