public void BuildInTest416() { Assert.Equal( FuncFalse, FunctionBuilder.BuildIn((IEnumerable <KeyGuid>)null)); }
public void BuildInTest423() { Assert.Equal(FunctionBuilder.BuildEquals(Guid1), FunctionBuilder.BuildIn(new List <Guid> { Guid1 })); // eq }
public void BuildInTest402() { Assert.Throws <ArgumentNullException>(() => FunctionBuilder.BuildIn(NullObjects)); }
public void BuildInTest409() { Assert.Equal( FunctionBuilder.BuildIn(SQLWhereLanguageDef.StormMainObjectKey, KeyGuid1, KeyGuid2), FunctionBuilder.BuildIn(KeyGuid1, KeyGuid2)); // in }
public void BuildInTest411() { Assert.Equal( FunctionBuilder.BuildIn(SQLWhereLanguageDef.StormMainObjectKey, TestDataObject1, TestDataObject2), FunctionBuilder.BuildIn(TestDataObject1, TestDataObject2)); // in }
private Protobuf.Transaction CreateContractMethodCallTx <TInput>(TInput functionInput, out FunctionBuilder <TInput> functionBuilder) { functionBuilder = this.contractBuilder.GetFunctionBuilder <TInput>(); CallInput callInput = functionBuilder.CreateCallInput(functionInput); return(this.CreateContractMethodCallTx(callInput.Data, Protobuf.VMType.Evm)); }
public void BuildInTest422() { Assert.Equal( FuncFalse, FunctionBuilder.BuildIn(Enumerable.Empty <int>())); }
/* * The building stops when the "end" token is reached. */ internal InterpreterStep(Interpreter interp, string end) { this.interp = interp; this.end = end; builder = interp.CurrentBuilder; }
public void BuildInTest502() { Assert.Throws <ArgumentNullException>(() => FunctionBuilder.BuildIn(GuidVarDef, NullFunction)); }
public void BuildLessTest44() { Assert.Equal( LangDef.GetFunction(LangDef.funcL, DateGenVarDef, DateTime1), FunctionBuilder.BuildLess <TestDataObject>(x => x.BirthDate, DateTime1)); }
public void Run() { var builder = new FunctionBuilder(); builder.fileName = Path.GetFileName(filePath); var lines = File.ReadAllLines(filePath); for (uint lineNum = 0; lineNum < lines.Length; lineNum++) { var line = lines[lineNum].Trim(); if (line.Length == 0 || line.StartsWith(";")) continue; // make sure the builder knows what line we're on, woo. builder.currentLineNumber = lineNum + 1; var command = (line.Contains(" ") ? line.Substring(0, line.IndexOf(' ')) : line).ToLower(); var rest = line.Substring(command.Length).Trim(); if (command.StartsWith(".")) { switch (command.Substring(1)) { case "fn": var paramNames = rest.Split(' '); builder = new FunctionBuilder(builder); builder.currentLineNumber = lineNum + 1; for (int i = 0; i < paramNames.Length; i++) builder.AddParameter(paramNames[i]); continue; case "endfn": var proto = builder.Build(); builder = builder.parent; builder.OpClosure(proto); continue; default: Console.WriteLine(command); throw new ArgumentException(); } } else { switch (command) { case "nop": CheckEmpty(rest); builder.OpNop(); continue; case "pop": CheckEmpty(rest); builder.OpPop(); continue; case "dup": CheckEmpty(rest); builder.OpDup(); continue; case "jump": builder.OpJump((uint)(builder.InsnCount + int.Parse(rest) + 1)); continue; case "jumpeq": builder.OpJumpEq((uint)(builder.InsnCount + int.Parse(rest) + 1)); continue; case "jumpneq": builder.OpJumpNeq((uint)(builder.InsnCount + int.Parse(rest) + 1)); continue; case "jumpt": builder.OpJumpT((uint)(builder.InsnCount + int.Parse(rest) + 1)); continue; case "jumpf": builder.OpJumpF((uint)(builder.InsnCount + int.Parse(rest) + 1)); continue; case "lload": { CheckSymbol(rest); uint location; if (builder.GetLocalLocation(rest, out location)) builder.OpLLoad(location); else throw new ArgumentException(); } continue; case "lstore": { CheckSymbol(rest); uint location; if (builder.GetLocalLocation(rest, out location)) builder.OpLStore(location); else throw new ArgumentException(); } continue; case "oload": { CheckSymbol(rest); uint location; if (builder.GetOuterLocation(rest, out location)) builder.OpOLoad(location); else throw new ArgumentException(); } continue; case "ostore": { CheckSymbol(rest); uint location; if (builder.GetOuterLocation(rest, out location)) builder.OpOStore(location); else throw new ArgumentException(); } continue; case "kload": CheckSymbol(rest); builder.OpKLoad(rest); continue; case "kstore": CheckSymbol(rest); builder.OpKStore(rest); continue; case "gload": CheckSymbol(rest); builder.OpGLoad(rest); continue; case "gstore": CheckSymbol(rest); builder.OpGStore(rest); continue; case "iload": CheckEmpty(rest); builder.OpILoad(uint.Parse(rest)); continue; case "istore": CheckEmpty(rest); builder.OpIStore(uint.Parse(rest)); continue; case "fload": CheckSymbol(rest); builder.OpFLoad(rest); continue; case "fstore": CheckSymbol(rest); builder.OpFStore(rest); continue; case "load": CheckSymbol(rest); builder.OpLoad(rest); continue; case "store": CheckSymbol(rest); builder.OpStore(rest); continue; case "null": CheckEmpty(rest); builder.OpNull(); continue; case "bconst": builder.OpBConst(bool.Parse(rest)); continue; case "iconst": builder.OpIConst(Laye.ConvertToInt(rest)); continue; case "fconst": builder.OpFConst(Laye.ConvertToFloat(rest)); continue; case "invoke": builder.OpInvoke(uint.Parse(rest)); continue; case "prefix": CheckOperator(rest); builder.OpPrefix(rest); continue; case "infix": CheckOperator(rest); builder.OpInfix(rest); continue; case "compis": CheckEmpty(rest); builder.OpCompIs(); continue; case "compnotis": CheckEmpty(rest); builder.OpCompNotIs(); continue; case "comptypeof": CheckEmpty(rest); builder.OpCompTypeOf(); continue; case "compnottypeof": CheckEmpty(rest); builder.OpCompNotTypeOf(); continue; case "typeof": CheckEmpty(rest); builder.OpTypeOf(); continue; default: Console.WriteLine(command); throw new ArgumentException(); } } } var kit = new LayeKit(); var closure = new LayeClosure(kit, builder.Build()); var lstate = new LayeState(); /* lstate["println"] = (LayeCallback)((state, args) => { var sbuilder = new StringBuilder(); for (int i = 0; i < args.Length; i++) { if (i > 0) sbuilder.Append(" "); sbuilder.Append(args[i].ToString()); } Console.WriteLine(sbuilder); return LayeObject.NULL; }); */ closure.Invoke(lstate); }
public void BuildLessTest43() { Assert.Equal( LangDef.GetFunction(LangDef.funcL, IntGenVarDef, Int1), FunctionBuilder.BuildLess <TestDataObject>(x => x.Height, Int1)); }
public void BuildLessTest42() { Assert.Throws <FormatException>(() => FunctionBuilder.BuildLess <TestDataObject>(x => x.Height, "asd")); }
public void BuildLessTest41() { Assert.Throws <ArgumentNullException>(() => FunctionBuilder.BuildLess <TestDataObject>(x => x.Height, NullObject)); }
public void BuildLessTest33() { FunctionBuilder.BuildLess(NumericVarDef, Int1); }
public void BuildInTest503() { Assert.Throws <ArgumentNullException>(() => FunctionBuilder.BuildIn(NullLambda, NullFunction)); }
private Protobuf.Transaction CreateContractMethodCallTx(string method, object[] functionInput, out FunctionBuilder functionBuilder) { functionBuilder = this.contractBuilder.GetFunctionBuilder(method); CallInput callInput = functionBuilder.CreateCallInput(functionInput); return(this.CreateContractMethodCallTx(callInput.Data, Protobuf.VMType.Evm)); }
public void BuildInTest504() { Assert.Throws <ArgumentNullException>(() => FunctionBuilder.BuildIn <TestDataObject>(x => x.Height, NullFunction)); }
public void BuildInTest421() { Assert.Equal( FuncFalse, FunctionBuilder.BuildIn(Enumerable.Empty <TestDataObject>())); }
public void BuildInTest510() { Assert.Equal( LangDef.GetFunction(LangDef.funcIN, PrimaryKeyVarDef, FuncSQL), FunctionBuilder.BuildIn(FuncSQL)); }
public void BuildInTest408() { Assert.Equal(FunctionBuilder.BuildEquals(Guid1), FunctionBuilder.BuildIn(Guid1, Guid1)); // eq }
public void BuildInTest511() { Assert.Equal( LangDef.GetFunction(LangDef.funcIN, GuidVarDef, FuncSQL), FunctionBuilder.BuildIn(GuidVarDef, FuncSQL)); }
public void BuildInTest410() { Assert.Equal(FunctionBuilder.BuildEquals(KeyGuid1), FunctionBuilder.BuildIn(KeyGuid1, KeyGuid1)); // eq }
public void BuildInTest512() { Assert.Equal( LangDef.GetFunction(LangDef.funcIN, IntGenVarDef, FuncSQL), FunctionBuilder.BuildIn <TestDataObject>(x => x.Height, FuncSQL)); }
public void BuildInTest412() { Assert.Equal( FunctionBuilder.BuildEquals(TestDataObject1), FunctionBuilder.BuildIn(TestDataObject1, TestDataObject1)); // eq }
public Body(string code) { FunctionBuilder fb = new FunctionBuilder(); fb.BuildTree(code, this); }
public void BuildInTest401() { Assert.Equal( FuncFalse, FunctionBuilder.BuildIn(NullObject)); }
public void Constructor_NullCache_ArgumentNullExceptionThrown() { IFunctionBuilder functionBuilder = new FunctionBuilder(); Assert.Throws <ArgumentNullException>(() => new DtoMapper(functionBuilder, null)); }
public void BuildInTest414() { Assert.Equal( FuncFalse, FunctionBuilder.BuildIn(1, 1)); }
private string CreateContractMethodCallInput(string method, object[] functionInput, out FunctionBuilder functionBuilder) { functionBuilder = this.contractBuilder.GetFunctionBuilder(method); CallInput callInput = functionBuilder.CreateCallInput(functionInput); return(callInput.Data); }
internal FunctionCompiler(DetailLogger log, FunctionBuilder parent = null, string fileName = null) { this.log = log; builder = new FunctionBuilder(parent, fileName); }
public void BuildLessTest32() { Assert.Throws <ArgumentNullException>(() => FunctionBuilder.BuildLess(NumericVarDef, NullObject)); }