C#版的eval,C#Light开源嵌入式脚本,unity热更新不再愁
目前最新版本AlphaV0.06
完全的c#语法,可用于一切能运行C#的场合,wp windows xamarin mono asp.net unity3d
内嵌了int uint bool string float double 这些数据类型,可以自己扩充类型;
已经拥有了数学表达式计算、逻辑表达式计算、函数调用,特别的trace表达式
if for 两种分支结构,支持break; continue; return;
目前已经是一个完全可用的小脚本系统。
将来的V0.10版本会添加成员函数和静态函数的功能。V0.10版本将会长久稳定。
还羡慕js的eval函数么,一直感觉C#里面没有好用的脚本语言么,C#Lite来了
先看一段代码

输入字符串,直接得到了结果,是不是很神奇呢?
再看看如果我要用C#Lite计算一个带参数的公式怎么办?
还是来看一段代码

只要多加一个content对象,执行之前,先定义a b 两个变量,就可以用了呢,是不是感觉妈妈都不再担心我的学习了呢。
这时候你会说,就一个四则运算啊,有什么呀?这和脚本有关系吗?
别急,再来看一段代码

看到没,完全的c#语法,就这样直接执行了哦。
更碉堡的是这个完全可以在unity中使用哦,跨平台一点问题都没有,几乎所有的c#环境都能使用。
那么初始化是不是会麻烦呢,相信我,也很简单。
C#Lite已经alphav0.06了,这是一次重大的更新,C#Lite已经完全拥有了脚本语言的能力,那就是,函数特性已经添加。
可以从脚本中调用c#的函数

不喜欢看源代码的同学直接去这里拿dll和测试代码即可
http://crazylights.googlecode.com/svn/CLReach/CSLite/publish/
想研究源码可以移步项目主页
https://code.google.com/p/crazylights/wiki/CSLite
C#版的eval,C#Light开源嵌入式脚本,unity热更新不再愁的更多相关文章
- 我发起了一个 .Net Core 平台上的 开源项目 ShadowDomain 用于 热更新
大家好, 我发起了一个 .Net Core 平台上的 开源项目 ShadowDomain 用于 热更新 . 简单的说, 原理就是 类似 Asp.net 那样 让 当前 WebApp 运行在一个 A ...
- C#最良心脚本语言C#Light/Evil,Xamarin\WP8\Unity热更新最良心方案,再次进化.
C#Light的定位是嵌入式脚本语言,一段C#Light脚本是一个函数 C#Evil定位为书写项目的脚本语言,多脚本文件合作,可以完全用脚本承载项目. C#Light/Evil 使用完全C#一致性语法 ...
- C#Lite Unity热更新开源解决方案改名C#Light
因为此脚本语言与C#Lite Framework 开源项目重名,故修改名称,发音不变.
- Unity 热更新实例一、C#Light 和UI系统使用实例
接下来我会运用热更新的机制,逐步制作一些例子来阐释脚本系统如何和Unity结合. 脚本不限于使用C#Lite,但是C#Lite会有一些便利之处,请往下看. 结合机制也不限于这一种,但是C#Lite的设 ...
- 适合学习C语言开源项目——嵌入式脚本语言 Berry
嵌入式脚本语言 Berry github网址 :https://github.com/Skiars/berry Berry 是一款面向小型嵌入式系统的脚本语言,目前发布了 0.1.0 版本.相比于其他 ...
- 腾讯开源手游热更新方案,Unity3D下的Lua编程
原文:http://www.sohu.com/a/123334175_355140 作者|车雄生 编辑|木环 腾讯最近在开源方面的动作不断:先是微信跨平台基础组件Mars宣布开源,腾讯手游又于近期开源 ...
- 转发 ----> 2018年阿里巴巴重要开源项目汇总(持续更新中)
转发自segmentfault https://segmentfault.com/a/1190000017346799 前端 1.数据驱动的高交互可视化图形语法 AntV - G2 G2 是一套基于 ...
- (开源项目)abattoir unity游戏
(开源项目)abattoir unity游戏 欢迎各位的改进和提议! 名称: abattoir(角斗场) 版本: v1.0 作者: N-n-N(笔者) 简介: 添加娱乐(冲撞)模式和普通(一般)模式 ...
- 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...
随机推荐
- EXCEL文件格式不匹配,或者已经损坏,除非信任来源
修改注册表解决: .打开注册表编辑器 方法:开始 -> 运行 -> 输入regedit -> 确定 .找到注册表子项 HKEY_CURRENT_USER\Software\Micro ...
- C# 读取Excel文件里面的内容到DataSet
摘要:读取Excel文件里面的内容到DataSet 代码: /// <summary> /// 读取Excel文件里面的内容到DataSet /// </summary> // ...
- sql update多表联合更新
update tabA set PrintTag=c.dp_state from tabA a inner join tabB b on a.Code=b.design inner join tabC ...
- vue2 上传图片
<template> <div class="vue-upload-img-multiple"> <div v-if="images.len ...
- 数据类型安全验证都交给TryParse吧
C# 网站开发中 往往在编写后台代码中遇到从字符类型转换到其他类型.其实无需在单独验证字符串长度,是否为空等工作.直接用Tryparse转换,如果转换失败说明字符串的格式等有误.成功则再进一步验证转换 ...
- C#引用类型(class)和值类型(struct)
1. 值参数 当利用值向方法传递参数时,编译程序给实参的值做一份拷贝,并且将此拷贝传递给该方法.被调用的方法不传内存中实参的值,所以使用值参数时,可以保证实际值是安全的. using System; ...
- 清除路由器NAT地址转换
首先当你的NAT网络地址转换成功搭建起来,并且测试过网络通信时,此时NAT地址转换表上面是存在转换信息的,你可以通过在特权模式下输入命令"show ip nat translation&qu ...
- c#对数据库访问完应关闭连接
1.对数据库的连接SqlConnection con = new SqlConnection(constr);使用完成后,应该至少应该close或dispose关闭.否则会导致数据库例如(SQl200 ...
- 简单修改cramfs
首先进入root用户,确保LINUX系统下装有cramfsprogs,没有的话get-apt install cramfsprogs, 找到.cramfs文件,输入命令cramfsck -x song ...
- MongoDB学习比较-07 C#驱动操作MongoDB
下载驱动 驱动的下载有两种方式:一种是在C#项目中通过NuGet进行安装,另一种是通过下面的链接:https://github.com/mongodb/mongo-csharp-driver/rele ...