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 ...
随机推荐
- 关于Linux的 /sbin权限问题
安装ubuntu一段时间后新增了用户,突然发现原来的用户用不了 ifconfig ,提示找不到命令 一试之下发现/sbin/ifconfig,可以,明白了是因为用户新增了,系统不认为当前用户是唯一用户 ...
- MySQL数据库sql语句的一些简单优化
1.查询条件的先后顺序 有多个查询条件时,要把效率高能更精确筛选记录的条件放在后边.因为MySQL解析sql语句是从后往前的(不知是否准确). 例: select a.*,b.* from UsrIn ...
- json数据测试接口
json数据测试接口:http://www.xiaoqiang.org/tools/JsonView/?1348068433
- c# GridView有关RowClick事件,可单击显示选中的row
//当前选定行 int i = this.gridView1.FocusedRowHandle; //选中行,列名为name的值 gridView1.GetRowCellDisplayText(i, ...
- 学习maven的使用,看到一篇很实用的入门教程(菜鸟级入门)
一.前言 早就知道maven 在java 项目的管理方面名声显赫,于是就想着学习掌握之,于是查阅了大量文档.发现这些文档的作者都是java 的大腕,大多都是站在掌握了一定maven 基 ...
- 在64位windows下使用instsrv.exe和srvany.exe创建windows服务[转]
本文转自:https://www.iflym.com/index.php/computer-use/201205020001.html 在32位的windows下,包括windows7,windows ...
- 基于Django的web开发
github地址:https://github.com/shirleyandgithub/PythonWeb
- Sublime Text 3 Install Markdown Preview Plugins
Sublime Text 3 Install Markdown Preview Plugins. [TOC] 前言 什么是Markdown Markdown是一种可以使用普通文本编辑器编写的标记语言, ...
- GCD in Swfit 3.0
这里包括了Queue, Group, Barrier, Semaphore等内容.基本上常用的GCD对象和方法在Swift3.0的改变都囊括其中. 代码在这里:https://github.com/f ...
- Python基于pandas的数据处理(二)
14 抽样 df.sample(10, replace = True) df.sample(3) df.sample(frac = 0.5) # 按比例抽样 df.sample(frac = 10, ...