文档章节

Dart dart:mirrors 库

scooplol
 scooplol
发布于 2018/08/28 16:57
字数 850
阅读 68
收藏 0

Dart中的基本反射,支持内省和动态调用。

内省是运行程序可以检查其自身结构的反射子集。例如,一个打印出任意对象的所有成员名称的函数。

动态调用是指在编译时不按字面指定评估代码的能力,例如调用一个其名称作为参数提供的方法(因为它在数据库中查找,或者由用户以交互方式提供)。

如何解释这个库的文档

通常,Dart声明的名称使用Symbol类的实例表示。 每当doc讲述一个表示名称的Symbol类的对象时,它就意味着用于构造s的字符串。

文档经常滥用带有Dart伪代码的符号,例如o.x(a),其中o和a被定义为对象;在这些情况下实际意味着o'.x(a')其中o'和a'是分别与o和a绑定的Dart变量。此外,o'和a'被假定为新变量(意味着它们与程序中的任何其他变量不同)

有时文档引用可序列化的对象。当且仅当它是num,bool,String,一个可跨隔离序列化的对象列表,或者带有键和值的Map(这些键和值都可以跨隔离序列化)的实例时,对象才可以跨隔离进行序列化.

状态:不稳定

dart:mirrors库不稳定,其API可能会因用户反馈而略有变化。 该库依赖于平台,因此它具有dart2js和Dart VM的实现。 两者都在开发中,可能还不支持所有操作。

Classes

 

ClassMirror

ClassMirror反映了Dart语言类。.

ClosureMirror

ClosureMirror反映了一个闭包. [...]

CombinatorMirror

在库依赖项上声明的show / hide组合器上的镜像。

Comment

用于将注释编码为元数据注解的类。

DeclarationMirror

DeclarationMirror反映了Dart程序中声明的某个实体.

FunctionTypeMirror

FunctionTypeMirror表示Dart语言中函数的类型.

InstanceMirror

InstanceMirror反映Dart语言对象的实例.

IsolateMirror

IsolateMirror反映了隔离.

LibraryDependencyMirror

导入或导出声明中的镜像.

LibraryMirror

LibraryMirror反映了Dart语言库,提供对库的变量,函数和类的访问.

MethodMirror

MethodMirror反映Dart语言函数,方法,构造函数,getter或setter.

Mirror

Mirror 反映了一些Dart语言实体. [...]

MirrorsUsed

描述如何使用“dart:mirrors”的注解(实验). [...]

MirrorSystem

MirrorSystem是用于反映一组关联库的主要接口. [...]

ObjectMirror

ObjectMirrorInstanceMirror, ClassMirror, 和 LibraryMirror的公共超接口,表示它们的共享功能. [...]

ParameterMirror

ParameterMirror反映Dart形式参数声明.

SourceLocation

SourceLocation描述Dart源代码中实体的范围.

TypedefMirror

TypedefMirror表示Dart语言程序中的typedef.

TypeMirror

TypeMirror反映Dart语言类,typedef,函数类型或类型变量.

TypeVariableMirror

TypeVariableMirror表示泛型类型的类型参数.

VariableMirror

VariableMirror反映了Dart语言变量声明.

Functions

currentMirrorSystem() → MirrorSystem

返回当前隔离的MirrorSystem.

reflect(Object reflectee) → InstanceMirror

反映一个实例. [...]

reflectClass(Type key) → ClassMirror

反映类声明. [...]

reflectType(Type key, [ List<Type> typeArguments ]) → TypeMirror

反映ke'y表示的类型. [...]

© 著作权归作者所有

共有 人打赏支持
scooplol
粉丝 14
博文 103
码字总数 205785
作品 0
南充
程序员
私信 提问
Dart 发布 Beta 版本,结构化编程语言

Dart是一种基于类的可选类型化编程语言,设计用于创建Web应用程序。 Google称,Dart的设计目标是为Web编程创造结构化但又富有灵活性的语言;编程方法一目了然,符合程序员的自然习惯,易于学...

chai2010
2013/06/20
1K
14
Dart 1.9.3 发布,结构化编程语言

Dart 1.9.3 发布,此版本是个 bug 修复版本,改进内容如下: dart2js: Addresses as issue with minified Javascript output with CSP enabled - r44453 Editor: Fixes accidental updating ......

oschina
2015/04/27
2.8K
7
谷歌宣布推出 Dart 2 稳定版和 Dart Web 平台

北京时间8月8日,谷歌宣布推出 Dart 2 的第二个稳定版本,官方表示,这标志着 Dart 已“重生”成为移动和 Web 开发的主流编程语言。本次发布的 Dart 2 稳定版本包括重写的 Dart Web 平台,它...

局长
2018/08/08
7.1K
46
Dart 1.8 发布,支持枚举

Dart 1.8 发布,此版本是个稳定版本,提供在 Stable 频道,主要包括库改进和尝试性支持枚举。 在 Dart Editor 的 Tools > Preferences > Experimental 下面,你可以看到“Enable Enums Supp...

oschina
2014/11/29
1K
5
《Dart 语言导览》发布

旨在改善 web 应用开发过程的 Dart 团队本周发布了《Dart 语言导览》(A Tour of the Dart Language),详细介绍了 Dart 语言的各项功能,是快速入门的极佳读物,也是 Dart 语言用户的便捷参...

红薯
2012/04/23
3.4K
9

没有更多内容

加载失败,请刷新页面

加载更多

vuex

一直有个误区 vuex既然页面刷新会丢失 那还有什么意义 。 重新翻看了下文档才恍然大误,vuex主要解决的是不同组件间的通信。 跨页面数据共享本质上还是用sessionStorage/localStorage...

东东笔记
35分钟前
2
0
网站漏洞检测之WordPress 5.0.0 修复方案

2019年正月刚开始,WordPress最新版本存在远程代码注入获取SHELL漏洞,该网站漏洞影响的版本是wordpress5.0.0,漏洞的产生是因为image模块导致的,因为代码里可以进行获取目录权限,以及文件...

网站安全
今天
1
0
MySql 优化 group by 语句

默认情况下,Mysql 对所有 group by 的字段进行排序,如果查询包括 group by ,用户想要避免排序结果的消耗。可以指定 order by null 禁止排序。 mysql> EXPLAIN select * from sys_log gro...

嘴角轻扬30
今天
11
0
Linux分区&格式化&文件系统&LVM&扩容

硬件 磁盘由 盘片组、主轴马达、机械臂、磁头、驱动芯片和电路、接口等构成 2. 磁盘的分割 每个盘片很多同心圆分割为磁道 Trace 一组盘片的同径磁道叫做一个柱面 Cylinder 每个磁道又被分为很...

可数局部基
今天
5
0
刷leetcode第705题- 设计哈希集合

这个我可能做的不是很符合题意,虽然AC了,但是没有去用到hash函数之类的方式。同样使用了位运算来搞定这一切,简单易懂。上代码如下: typedef char MyHashSet;/** Initialize your data ...

锟斤拷烫烫烫
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部