mirror of
https://git.tesses.org/tesses50/crosslangextras.git
synced 2026-06-01 18:35:32 +00:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 175105c807 | |||
| dbe5e137fe | |||
| 3e5932b2ad |
@@ -13,23 +13,22 @@ env:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-crosslang-shell-and-cpkg:
|
build-crosslang-shell-and-cpkg:
|
||||||
runs-on: ubuntu-latest
|
runs-on: arch-builder
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- run: |
|
- run: |
|
||||||
|
wget -O /root/repository.key https://git.tesses.org/api/packages/tesses50/arch/repository.key
|
||||||
|
pacman-key --add /root/repository.key
|
||||||
|
printf "[tesses50.git.tesses.org]\nSigLevel = Optional TrustAll\nServer = https://git.tesses.org/api/packages/tesses50/arch/core/\$arch\n" >> /etc/pacman.conf
|
||||||
|
pacman --noconfirm -Sy crosslang
|
||||||
cd vscode-extension
|
cd vscode-extension
|
||||||
npm install
|
npm install
|
||||||
npm install -g typescript
|
npm install -g typescript
|
||||||
npm install -g @vscode/vsce
|
npm install -g @vscode/vsce
|
||||||
vsce package
|
vsce package
|
||||||
cd ..
|
cd ..
|
||||||
wget -O /usr/local/bin/crosslang https://redirect.tesses.net/cl-slim-x86_64-linux-musl
|
crosslang int ./build.tcross pack
|
||||||
chmod 755 /usr/local/bin/crosslang
|
crosslang int ./build.tcross install
|
||||||
ln -s /usr/local/bin/crosslang /usr/local/bin/crossc
|
|
||||||
ln -s /usr/local/bin/crosslang /usr/local/bin/crossint
|
|
||||||
ln -s /usr/local/bin/crosslang /usr/local/bin/crossvm
|
|
||||||
crossint ./build.tcross pack
|
|
||||||
crossint ./build.tcross install
|
|
||||||
mkdir -p artifacts
|
mkdir -p artifacts
|
||||||
cp Tesses.CrossLang.ShellPackage-*.crvm artifacts/ShellPackage.crvm
|
cp Tesses.CrossLang.ShellPackage-*.crvm artifacts/ShellPackage.crvm
|
||||||
cp Tesses.CrossLang.PackageServer/bin/Tesses.CrossLang.PackageServer-*.crvm artifacts/CPKG.crvm
|
cp Tesses.CrossLang.PackageServer/bin/Tesses.CrossLang.PackageServer-*.crvm artifacts/CPKG.crvm
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
## Changelog
|
## Changelog
|
||||||
|
|
||||||
|
## v0.0.3
|
||||||
|
Work with slim instead
|
||||||
|
|
||||||
## v0.0.2
|
## v0.0.2
|
||||||
Add the templates for npm
|
Add the templates for npm
|
||||||
|
|
||||||
|
|||||||
@@ -6,15 +6,15 @@
|
|||||||
|
|
||||||
# To Build
|
# To Build
|
||||||
```bash
|
```bash
|
||||||
crossint ./build.tcross
|
crosslang int ./build.tcross
|
||||||
```
|
```
|
||||||
|
|
||||||
# To Install
|
# To Install
|
||||||
```bash
|
```bash
|
||||||
crossint ./build.tcross install
|
crosslang int ./build.tcross install
|
||||||
```
|
```
|
||||||
|
|
||||||
# To Pack
|
# To Pack
|
||||||
```bash
|
```bash
|
||||||
crossint ./build.tcross pack
|
crosslang int ./build.tcross pack
|
||||||
```
|
```
|
||||||
@@ -27,6 +27,7 @@ class ExpectObj {
|
|||||||
this.SetRes(this.left == right, $"{this.left} is not equal to {right}");
|
this.SetRes(this.left == right, $"{this.left} is not equal to {right}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public LessThan(right)
|
public LessThan(right)
|
||||||
{
|
{
|
||||||
if(this.inverted)
|
if(this.inverted)
|
||||||
|
|||||||
@@ -0,0 +1,65 @@
|
|||||||
|
class ConcurrentQueue
|
||||||
|
{
|
||||||
|
private mtx = new Mutex();
|
||||||
|
|
||||||
|
private queue = new Queue();
|
||||||
|
|
||||||
|
public Enqueue(val)
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
queue.Enqueue(val);
|
||||||
|
mtx.Unlock();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public Dequeue()
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
const val = queue.Dequeue();
|
||||||
|
mtx.Unlock();
|
||||||
|
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
public Peek()
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
const val = queue.Peek();
|
||||||
|
mtx.Unlock();
|
||||||
|
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
|
public getCount()
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
const val = queue.Count;
|
||||||
|
mtx.Unlock();
|
||||||
|
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
public getLength()
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
const val = queue.Length;
|
||||||
|
mtx.Unlock();
|
||||||
|
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ToList()
|
||||||
|
{
|
||||||
|
|
||||||
|
mtx.Lock();
|
||||||
|
|
||||||
|
const ittr = new Queryable(queue);
|
||||||
|
const ls = ittr.ToList();
|
||||||
|
|
||||||
|
mtx.Unlock();
|
||||||
|
return ls;
|
||||||
|
}
|
||||||
|
|
||||||
|
public GetEnumerator()
|
||||||
|
{
|
||||||
|
return ToList().GetEnumerator();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,65 @@
|
|||||||
|
class ConcurrentStack
|
||||||
|
{
|
||||||
|
private mtx = new Mutex();
|
||||||
|
|
||||||
|
private stack = new Stack();
|
||||||
|
|
||||||
|
public Push(val)
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
stack.Push(val);
|
||||||
|
mtx.Unlock();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public Pop()
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
const val = stack.Pop();
|
||||||
|
mtx.Unlock();
|
||||||
|
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
public Top()
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
const val = stack.Top();
|
||||||
|
mtx.Unlock();
|
||||||
|
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
|
public getCount()
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
const val = stack.Count;
|
||||||
|
mtx.Unlock();
|
||||||
|
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
public getLength()
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
const val = stack.Length;
|
||||||
|
mtx.Unlock();
|
||||||
|
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ToList()
|
||||||
|
{
|
||||||
|
|
||||||
|
mtx.Lock();
|
||||||
|
|
||||||
|
const ittr = new Queryable(stack);
|
||||||
|
const ls = ittr.ToList();
|
||||||
|
|
||||||
|
mtx.Unlock();
|
||||||
|
return ls;
|
||||||
|
}
|
||||||
|
|
||||||
|
public GetEnumerator()
|
||||||
|
{
|
||||||
|
return ToList().GetEnumerator();
|
||||||
|
}
|
||||||
|
}
|
||||||
32
Tesses.CrossLang.Std/src/Collections/Queue.tcross
Normal file
32
Tesses.CrossLang.Std/src/Collections/Queue.tcross
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
class Queue
|
||||||
|
{
|
||||||
|
private items = [];
|
||||||
|
|
||||||
|
public Enqueue(val)
|
||||||
|
{
|
||||||
|
items.Add(val);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Dequeue()
|
||||||
|
{
|
||||||
|
if(items.Count == 0) return null;
|
||||||
|
const val = items[0];
|
||||||
|
items.RemoveAt(0);
|
||||||
|
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Peek()
|
||||||
|
{
|
||||||
|
if(items.Count == 0) return null;
|
||||||
|
return items[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
public GetEnumerator()
|
||||||
|
{
|
||||||
|
return items.GetEnumerator();
|
||||||
|
}
|
||||||
|
|
||||||
|
public getCount() items.Count;
|
||||||
|
public getLength() items.Length;
|
||||||
|
}
|
||||||
24
Tesses.CrossLang.Std/src/Collections/SequenceEquals.tcross
Normal file
24
Tesses.CrossLang.Std/src/Collections/SequenceEquals.tcross
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
func SequenceEquals(a,b)
|
||||||
|
{
|
||||||
|
const ittra = a.GetEnumerator();
|
||||||
|
const ittrb = b.GetEnumerator();
|
||||||
|
|
||||||
|
defer {
|
||||||
|
ittra.Dispose();
|
||||||
|
ittrb.Dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
while(true) {
|
||||||
|
const hasa = ittra.MoveNext();
|
||||||
|
const hasb = ittrb.MoveNext();
|
||||||
|
|
||||||
|
if(hasa != hasb) return false;
|
||||||
|
if(hasa)
|
||||||
|
{
|
||||||
|
if(!(hasa.Current == hasb.Current)) return false;
|
||||||
|
}
|
||||||
|
else break;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
33
Tesses.CrossLang.Std/src/Collections/Stack.tcross
Normal file
33
Tesses.CrossLang.Std/src/Collections/Stack.tcross
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
class Stack
|
||||||
|
{
|
||||||
|
private items = [];
|
||||||
|
|
||||||
|
public Push(val)
|
||||||
|
{
|
||||||
|
items.Insert(0, val);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Pop()
|
||||||
|
{
|
||||||
|
if(items.Count == 0) return null;
|
||||||
|
const val = items[0];
|
||||||
|
items.RemoveAt(0);
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Top()
|
||||||
|
{
|
||||||
|
if(items.Count == 0) return null;
|
||||||
|
return items[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
public getCount() items.Count;
|
||||||
|
|
||||||
|
|
||||||
|
public getLength() items.Length;
|
||||||
|
|
||||||
|
public GetEnumerator()
|
||||||
|
{
|
||||||
|
return items.GetEnumerator();
|
||||||
|
}
|
||||||
|
}
|
||||||
48
Tesses.CrossLang.Std/src/Event.tcross
Normal file
48
Tesses.CrossLang.Std/src/Event.tcross
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
class Event {
|
||||||
|
private mtx = new Mutex();
|
||||||
|
private cb = [];
|
||||||
|
public Event()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public Invoke(sender,e)
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
each(var item : cb)
|
||||||
|
{
|
||||||
|
item(sender,e);
|
||||||
|
}
|
||||||
|
mtx.Unlock();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Subscribe(val)
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
cb.Add(val);
|
||||||
|
mtx.Unlock();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Unsubscribe(val)
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
cb.Remove(val);
|
||||||
|
mtx.Unlock();
|
||||||
|
}
|
||||||
|
|
||||||
|
public operator+(val)
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
cb.Add(val);
|
||||||
|
mtx.Unlock();
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public operator-(val)
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
cb.Remove(val);
|
||||||
|
mtx.Unlock();
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -10,7 +10,7 @@ class Exception
|
|||||||
|
|
||||||
public ToString()
|
public ToString()
|
||||||
{
|
{
|
||||||
var messagePart = $"{Class.Name(this)}: {Message}";
|
var messagePart = $"{Class.Name(this)}: {this.Message}";
|
||||||
if(InnerException != undefined && InnerException != null)
|
if(InnerException != undefined && InnerException != null)
|
||||||
{
|
{
|
||||||
var innerEx = InnerException.ToString().Replace("\n","\n\t");
|
var innerEx = InnerException.ToString().Replace("\n","\n\t");
|
||||||
@@ -19,11 +19,3 @@ class Exception
|
|||||||
return messagePart;
|
return messagePart;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class OutOfRangeException : Exception
|
|
||||||
{
|
|
||||||
public OutOfRangeException(varName,$inner)
|
|
||||||
{
|
|
||||||
Exception($"{varName} is out of range.",inner);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
class OutOfRangeException : Exception
|
||||||
|
{
|
||||||
|
public OutOfRangeException(varName,$inner)
|
||||||
|
{
|
||||||
|
Exception($"{varName} is out of range.",inner);
|
||||||
|
}
|
||||||
|
}
|
||||||
42
Tesses.CrossLang.Std/src/ExecutorQueue.tcross
Normal file
42
Tesses.CrossLang.Std/src/ExecutorQueue.tcross
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
class ExecutorQueue {
|
||||||
|
private mtx = new Mutex();
|
||||||
|
private items = [];
|
||||||
|
private thread;
|
||||||
|
private running=true;
|
||||||
|
|
||||||
|
public ExecutorQueue()
|
||||||
|
{
|
||||||
|
thread = new Thread(()=>{
|
||||||
|
while(running)
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
if(items.Count == 0)
|
||||||
|
{
|
||||||
|
mtx.Unlock();
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
const item = items[0];
|
||||||
|
items.RemoveAt(0);
|
||||||
|
mtx.Unlock();
|
||||||
|
if(TypeIsCallable(item))
|
||||||
|
item();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public EnqueueJob(cb)
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
items.Add(cb);
|
||||||
|
mtx.Unlock();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Dispose()
|
||||||
|
{
|
||||||
|
mtx.Lock();
|
||||||
|
running=false;
|
||||||
|
mtx.Unlock();
|
||||||
|
thread.Join();
|
||||||
|
}
|
||||||
|
}
|
||||||
12
Tesses.CrossLang.Std/src/FuncWithThis.tcross
Normal file
12
Tesses.CrossLang.Std/src/FuncWithThis.tcross
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
func FuncWithThis(
|
||||||
|
function,
|
||||||
|
thisVal
|
||||||
|
)
|
||||||
|
{
|
||||||
|
return ($$args)=>{
|
||||||
|
const newArgs = [thisVal];
|
||||||
|
each(var item : args) newArgs.Add(item);
|
||||||
|
|
||||||
|
return function.Call(newArgs);
|
||||||
|
};
|
||||||
|
}
|
||||||
19
Tesses.CrossLang.Std/src/MutexLock.tcross
Normal file
19
Tesses.CrossLang.Std/src/MutexLock.tcross
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
class MutexLock
|
||||||
|
{
|
||||||
|
private mtx;
|
||||||
|
public MutexLock(mtx)
|
||||||
|
{
|
||||||
|
this.mtx = mtx;
|
||||||
|
mtx.Lock();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Dispose()
|
||||||
|
{
|
||||||
|
mtx.Unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func Lock(mtx)
|
||||||
|
{
|
||||||
|
return new MutexLock(mtx);
|
||||||
|
}
|
||||||
39
Tesses.CrossLang.Std/src/Result.tcross
Normal file
39
Tesses.CrossLang.Std/src/Result.tcross
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
class Result {
|
||||||
|
private isError=false;
|
||||||
|
private value=null;
|
||||||
|
|
||||||
|
public Result(value, isError)
|
||||||
|
{
|
||||||
|
this.value = value;
|
||||||
|
this.isError = isError;
|
||||||
|
}
|
||||||
|
|
||||||
|
static Error(value)
|
||||||
|
{
|
||||||
|
return new Result(value,true);
|
||||||
|
}
|
||||||
|
|
||||||
|
static OK(value)
|
||||||
|
{
|
||||||
|
return new Result(value,false);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public getIsError()
|
||||||
|
{
|
||||||
|
return this.isError;
|
||||||
|
}
|
||||||
|
|
||||||
|
public getValue()
|
||||||
|
{
|
||||||
|
return this.value;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public Unwrap()
|
||||||
|
{
|
||||||
|
if(isError) throw value;
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
}
|
||||||
48
Tesses.CrossLang.Std/tests/Collections.tcross
Normal file
48
Tesses.CrossLang.Std/tests/Collections.tcross
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
|
||||||
|
|
||||||
|
Test("Collections",()=>{
|
||||||
|
Spec("SequenceEquals",()=>{
|
||||||
|
enumerable func myenum()
|
||||||
|
{
|
||||||
|
yield 42;
|
||||||
|
yield 69;
|
||||||
|
yield 128;
|
||||||
|
yield "Hello";
|
||||||
|
}
|
||||||
|
Assert(SequenceEquals("MyString",['M','y','S','t','r','i','n','g']), "SequenceEquals is not functioning correctly, String MyString and array with same chars should return true");
|
||||||
|
Assert(SequenceEquals(myenum(), [42,69,128,"Hello"]), "SequenceEquals is not functioning correctly, enumerable and list should return same result");
|
||||||
|
});
|
||||||
|
Spec("Queue", ()=>{
|
||||||
|
const queue = new Queue();
|
||||||
|
queue.Enqueue("Apple");
|
||||||
|
queue.Enqueue(37);
|
||||||
|
Assert(!TypeIsDefined(queue.Enqueue("My String")), "Queue.Enqueue should not return value, but it does");
|
||||||
|
Expect(queue.Dequeue()).ToBe("Apple");
|
||||||
|
|
||||||
|
Expect(queue.Peek()).LessThan(42);
|
||||||
|
|
||||||
|
Expect(queue.Count).ToBe(2);
|
||||||
|
queue.Dequeue();
|
||||||
|
Expect(queue.Count).ToBe(1);
|
||||||
|
|
||||||
|
queue.Enqueue(4);
|
||||||
|
queue.Enqueue(5);
|
||||||
|
queue.Enqueue(true);
|
||||||
|
|
||||||
|
Assert(SequenceEquals(queue,["My String",4,5,true]), "Queue isn't working correctly");
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
Spec("Stack", ()=>{
|
||||||
|
const stack = new Stack();
|
||||||
|
Assert(!TypeIsDefined(stack.Push(42)),"Stack.Push should not return a value, but it does");
|
||||||
|
stack.Push(59);
|
||||||
|
Expect(stack.Count).ToBe(2);
|
||||||
|
Expect(stack.Pop()).ToBe(59);
|
||||||
|
Expect(stack.Top()).ToBe(42);
|
||||||
|
Expect(stack.Pop()).ToBe(42);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
37
build.tcross
37
build.tcross
@@ -14,7 +14,7 @@ func cmd(name, args)
|
|||||||
func main(args)
|
func main(args)
|
||||||
{
|
{
|
||||||
|
|
||||||
var args2=["-o","./Tesses.CrossLang.BuildEssentials/bin-tmp","-r","./Tesses.CrossLang.BuildEssentials/res","-n","Tesses.CrossLang.BuildEssentials","-v","1.0.0.0-dev","Tesses.CrossLang.BuildEssentials/main.tcross"];
|
var args2=["c","-o","./Tesses.CrossLang.BuildEssentials/bin-tmp","-r","./Tesses.CrossLang.BuildEssentials/res","-n","Tesses.CrossLang.BuildEssentials","-v","1.0.0.0-dev","Tesses.CrossLang.BuildEssentials/main.tcross"];
|
||||||
each(var f : FS.Local.EnumeratePaths("./Tesses.CrossLang.BuildEssentials/src"))
|
each(var f : FS.Local.EnumeratePaths("./Tesses.CrossLang.BuildEssentials/src"))
|
||||||
{
|
{
|
||||||
if(f.GetExtension() == ".tcross")
|
if(f.GetExtension() == ".tcross")
|
||||||
@@ -25,38 +25,37 @@ func main(args)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
cmd("crossc", args2);
|
cmd("crosslang", args2);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.BuildEssentials/bin-tmp/Tesses.CrossLang.BuildEssentials-1.0.0.0-dev.crvm","Tesses.CrossLang.Shell"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.BuildEssentials/bin-tmp/Tesses.CrossLang.BuildEssentials-1.0.0.0-dev.crvm","Tesses.CrossLang.Shell"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Tesses.CrossLang.PackageServer"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Tesses.CrossLang.PackageServer"]);
|
||||||
//cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Tesses.CrossLang.WebSite"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Tesses.CrossLang.Std"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Tesses.CrossLang.Std"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/console"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/console"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/emptyweb"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/emptyweb"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/web"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/web"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/template"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/template"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/lib"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/lib"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/compiletool"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/compiletool"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/tool"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/tool"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/webapp"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/webapp"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/npmweb"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/npmweb"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/npmwebapp"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Templates/npmwebapp"]);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Tesses.CrossLang.PackageServer"]);
|
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Tesses.CrossLang.PackageServer"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Tesses.CrossLang.PackageServer"]);
|
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Tesses.CrossLang.PackageServer"]);
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Tesses.CrossLang.PackageServer"]);
|
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","Tesses.CrossLang.PackageServer"]);
|
||||||
*/
|
*/
|
||||||
cmd("crossvm",["./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","crosslang_shell_archive_maker"]);
|
cmd("crosslang",["vm","./Tesses.CrossLang.Shell/bin/Tesses.CrossLang.Shell-1.0.0.0-dev.crvm","build","crosslang_shell_archive_maker"]);
|
||||||
|
|
||||||
if(args.Length > 1)
|
if(args.Length > 1)
|
||||||
{
|
{
|
||||||
if(args[1] == "install")
|
if(args[1] == "install")
|
||||||
{
|
{
|
||||||
cmd("crossvm",["crosslang_shell_archive_maker/bin/crosslang_shell_archive_maker-1.0.0.0-dev.crvm", "install"]);
|
cmd("crosslang",["vm","crosslang_shell_archive_maker/bin/crosslang_shell_archive_maker-1.0.0.0-dev.crvm", "install"]);
|
||||||
}
|
}
|
||||||
else if(args[1] == "pack")
|
else if(args[1] == "pack")
|
||||||
{
|
{
|
||||||
cmd("crossvm",["crosslang_shell_archive_maker/bin/crosslang_shell_archive_maker-1.0.0.0-dev.crvm"]);
|
cmd("crosslang",["vm","crosslang_shell_archive_maker/bin/crosslang_shell_archive_maker-1.0.0.0-dev.crvm"]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user