Skip to content

Commit

Permalink
initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
DBTaylor committed Jun 13, 2017
0 parents commit 19df247
Show file tree
Hide file tree
Showing 39 changed files with 569 additions and 0 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
builds/
*.lvlps
*.aliases
97 changes: 97 additions & 0 deletions JSON.lvproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
<?xml version='1.0' encoding='UTF-8'?>
<Project Type="Project" LVVersion="15008000">
<Item Name="My Computer" Type="My Computer">
<Property Name="server.app.propertiesEnabled" Type="Bool">true</Property>
<Property Name="server.control.propertiesEnabled" Type="Bool">true</Property>
<Property Name="server.tcp.enabled" Type="Bool">false</Property>
<Property Name="server.tcp.port" Type="Int">0</Property>
<Property Name="server.tcp.serviceName" Type="Str">My Computer/VI Server</Property>
<Property Name="server.tcp.serviceName.default" Type="Str">My Computer/VI Server</Property>
<Property Name="server.vi.callsEnabled" Type="Bool">true</Property>
<Property Name="server.vi.propertiesEnabled" Type="Bool">true</Property>
<Property Name="specify.custom.address" Type="Bool">false</Property>
<Item Name="src" Type="Folder" URL="../src">
<Property Name="NI.DISK" Type="Bool">true</Property>
</Item>
<Item Name="tests" Type="Folder"/>
<Item Name="Dependencies" Type="Dependencies">
<Item Name="user.lib" Type="Folder">
<Item Name="Array of VData to VArray__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Array of VData to VArray__ogtk.vi"/>
<Item Name="Array of VData to VCluster__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Array of VData to VCluster__ogtk.vi"/>
<Item Name="Array Size(s)__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Array Size(s)__ogtk.vi"/>
<Item Name="Array to Array of VData__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Array to Array of VData__ogtk.vi"/>
<Item Name="Build Error Cluster__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/error/error.llb/Build Error Cluster__ogtk.vi"/>
<Item Name="Cluster to Array of VData__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Cluster to Array of VData__ogtk.vi"/>
<Item Name="Get Array Element TD__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Get Array Element TD__ogtk.vi"/>
<Item Name="Get Cluster Element Names__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Get Cluster Element Names__ogtk.vi"/>
<Item Name="Get Cluster Elements TDs__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Get Cluster Elements TDs__ogtk.vi"/>
<Item Name="Get Data Name from TD__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Get Data Name from TD__ogtk.vi"/>
<Item Name="Get Data Name__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Get Data Name__ogtk.vi"/>
<Item Name="Get Element TD from Array TD__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Get Element TD from Array TD__ogtk.vi"/>
<Item Name="Get Header from TD__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Get Header from TD__ogtk.vi"/>
<Item Name="Get Last PString__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Get Last PString__ogtk.vi"/>
<Item Name="Get PString__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Get PString__ogtk.vi"/>
<Item Name="Get TDEnum from Data__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Get TDEnum from Data__ogtk.vi"/>
<Item Name="Get Variant Attributes__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Get Variant Attributes__ogtk.vi"/>
<Item Name="Parse String with TDs__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Parse String with TDs__ogtk.vi"/>
<Item Name="Reshape 1D Array__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Reshape 1D Array__ogtk.vi"/>
<Item Name="Reshape Array to 1D VArray__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Reshape Array to 1D VArray__ogtk.vi"/>
<Item Name="Set Cluster Element by Name__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Set Cluster Element by Name__ogtk.vi"/>
<Item Name="Set Data Name__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Set Data Name__ogtk.vi"/>
<Item Name="Split Cluster TD__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Split Cluster TD__ogtk.vi"/>
<Item Name="Type Descriptor Enumeration__ogtk.ctl" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Type Descriptor Enumeration__ogtk.ctl"/>
<Item Name="Type Descriptor Header__ogtk.ctl" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Type Descriptor Header__ogtk.ctl"/>
<Item Name="Type Descriptor__ogtk.ctl" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Type Descriptor__ogtk.ctl"/>
<Item Name="Variant to Header Info__ogtk.vi" Type="VI" URL="/&lt;userlib&gt;/_OpenG.lib/lvdata/lvdata.llb/Variant to Header Info__ogtk.vi"/>
</Item>
<Item Name="vi.lib" Type="Folder">
<Item Name="Error Cluster From Error Code.vi" Type="VI" URL="/&lt;vilib&gt;/Utility/error.llb/Error Cluster From Error Code.vi"/>
<Item Name="NI_Data Type.lvlib" Type="Library" URL="/&lt;vilib&gt;/Utility/Data Type/NI_Data Type.lvlib"/>
</Item>
</Item>
<Item Name="Build Specifications" Type="Build">
<Item Name="decoder" Type="EXE">
<Property Name="App_copyErrors" Type="Bool">true</Property>
<Property Name="App_INI_aliasGUID" Type="Str">{4A5CAF67-430E-4781-95A2-CB705BB1FB10}</Property>
<Property Name="App_INI_GUID" Type="Str">{5277906F-F490-4F10-B843-DEFC525071AD}</Property>
<Property Name="App_serverConfig.httpPort" Type="Int">8002</Property>
<Property Name="Bld_autoIncrement" Type="Bool">true</Property>
<Property Name="Bld_buildCacheID" Type="Str">{F7D321C1-CDB5-48D9-8FD5-97384BF7F58A}</Property>
<Property Name="Bld_buildSpecName" Type="Str">decoder</Property>
<Property Name="Bld_excludeInlineSubVIs" Type="Bool">true</Property>
<Property Name="Bld_excludeLibraryItems" Type="Bool">true</Property>
<Property Name="Bld_excludePolymorphicVIs" Type="Bool">true</Property>
<Property Name="Bld_localDestDir" Type="Path">../builds/decoder</Property>
<Property Name="Bld_localDestDirType" Type="Str">relativeToProject</Property>
<Property Name="Bld_modifyLibraryFile" Type="Bool">true</Property>
<Property Name="Bld_previewCacheID" Type="Str">{E526DB6C-F4F8-4D2D-A5CE-B82A00E8199B}</Property>
<Property Name="Bld_version.build" Type="Int">40</Property>
<Property Name="Bld_version.major" Type="Int">1</Property>
<Property Name="Destination[0].destName" Type="Str">decoder.exe</Property>
<Property Name="Destination[0].path" Type="Path">../builds/decoder/decoder.exe</Property>
<Property Name="Destination[0].path.type" Type="Str">relativeToProject</Property>
<Property Name="Destination[0].preserveHierarchy" Type="Bool">true</Property>
<Property Name="Destination[0].type" Type="Str">App</Property>
<Property Name="Destination[1].destName" Type="Str">Support Directory</Property>
<Property Name="Destination[1].path" Type="Path">../builds/decoder/data</Property>
<Property Name="Destination[1].path.type" Type="Str">relativeToProject</Property>
<Property Name="DestinationCount" Type="Int">2</Property>
<Property Name="Source[0].itemID" Type="Str">{6926A15A-7154-4999-A167-B565FA5C8CA3}</Property>
<Property Name="Source[0].type" Type="Str">Container</Property>
<Property Name="Source[1].destinationIndex" Type="Int">0</Property>
<Property Name="Source[1].itemID" Type="Ref"></Property>
<Property Name="Source[1].sourceInclusion" Type="Str">TopLevel</Property>
<Property Name="Source[1].type" Type="Str">VI</Property>
<Property Name="SourceCount" Type="Int">2</Property>
<Property Name="TgtF_companyName" Type="Str">Erdos Miller</Property>
<Property Name="TgtF_fastFileFormat" Type="Bool">true</Property>
<Property Name="TgtF_fileDescription" Type="Str">decoder</Property>
<Property Name="TgtF_internalName" Type="Str">decoder</Property>
<Property Name="TgtF_legalCopyright" Type="Str">Copyright © 2017 Erdos Miller</Property>
<Property Name="TgtF_productName" Type="Str">decoder</Property>
<Property Name="TgtF_targetfileGUID" Type="Str">{F89D6609-091F-4C40-B1B4-768A47282789}</Property>
<Property Name="TgtF_targetfileName" Type="Str">decoder.exe</Property>
</Item>
</Item>
</Item>
</Project>
7 changes: 7 additions & 0 deletions LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Copyright (c) 2017, Erdos Miller

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25 changes: 25 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
LV-JSON
=================

LV-JSON is an open source LabVIEW library for parsing and composing JSON strings.

Installation
------------

[The most recent VI Package (.vip) can be downloaded here.](https://github.com/erdosmiller/lv-json/releases)

Open the VI Package using [VI Package Manager](http://vipm.jki.net/) and press ***Install***.

In LabVIEW, The LV-JSON palette can be found in the ***Erdos Miller*** palette.

Usage
-----

***Parse JSON String.vi*** and ***Compose JSON String.vi*** can convert between a JSON string and a ***JSON Value.ctl***. ***JSON Value.ctl*** is an algebraic data type that maps to the JSON type system. It is constructable and caseable using [LV-Tagged-Union](https://github.com/erdosmiller/lv-json/releases). To use this livrary with LV-Tagged-Union, the types ***LV-JSON:JSON Value.ctl*** and ***LV-JSON:JSON Name-Value Pair.ctl*** must be in memory.

Requirements
------------

OpenG Toolkit
MGI Tools
Requires LabVIEW 2015 or later
Binary file added src/examples/JSON Example.vi
Binary file not shown.
Binary file added src/examples/LV to JSON Test.vi
Binary file not shown.
Binary file added src/examples/subvis/JSON to Tree.vi
Binary file not shown.
Binary file added src/lib/Array Context.ctl
Binary file not shown.
Binary file added src/lib/Code Point to UTF-8.vi
Binary file not shown.
Binary file added src/lib/Compose Data.ctl
Binary file not shown.
Binary file added src/lib/Compose JSON String (JSON).vi
Binary file not shown.
Binary file added src/lib/Compose JSON String (LV).vi
Binary file not shown.
Binary file added src/lib/Compose JSON String.vi
Binary file not shown.
Binary file added src/lib/Context.ctl
Binary file not shown.
Binary file added src/lib/Format JSON String.vi
Binary file not shown.
Binary file added src/lib/JSON Name-Value Pair.ctl
Binary file not shown.
Binary file added src/lib/JSON Value.ctl
Binary file not shown.
Binary file added src/lib/JSON to LabVIEW.vi
Binary file not shown.
74 changes: 74 additions & 0 deletions src/lib/JSON.lvlib

Large diffs are not rendered by default.

Binary file added src/lib/LabVIEW to JSON.vi
Binary file not shown.
Binary file added src/lib/Match Regex.vi
Binary file not shown.
Binary file added src/lib/Name-Value Pair.ctl
Binary file not shown.
Binary file added src/lib/Object Context.ctl
Binary file not shown.
Binary file added src/lib/Parse JSON String (JSON).vi
Binary file not shown.
Binary file added src/lib/Parse JSON String (LV).vi
Binary file not shown.
Binary file added src/lib/Parse JSON String.vi
Binary file not shown.
Binary file added src/lib/Parse String.vi
Binary file not shown.
Binary file added src/lib/Read JSON File (JSON).vi
Binary file not shown.
Binary file added src/lib/Read JSON File (LV).vi
Binary file not shown.
Binary file added src/lib/Read JSON File.vi
Binary file not shown.
Binary file added src/lib/Set Name.vi
Binary file not shown.
Binary file added src/lib/Set Value.vi
Binary file not shown.
Binary file added src/lib/State.ctl
Binary file not shown.
Binary file added src/lib/Value Type.ctl
Binary file not shown.
Binary file added src/lib/Value.ctl
Binary file not shown.
Binary file added src/lib/Write JSON File (JSON).vi
Binary file not shown.
Binary file added src/lib/Write JSON File (LV).vi
Binary file not shown.
Binary file added src/lib/Write JSON File.vi
Binary file not shown.
Loading

0 comments on commit 19df247

Please sign in to comment.