首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nemerle扩展属性

Nemerle扩展属性
EN

Stack Overflow用户
提问于 2011-12-12 23:05:30
回答 1查看 285关注 0票数 2

最近有一场关于在Nemerle语言中添加扩展属性的讨论。但其语法尚不清楚。

更新了建议的语法:

代码语言:javascript
复制
module MExtension
{
  [ExtensionProperty(string)] public StringProp : int    { get; set; } 
  [ExtensionProperty(int)]    public IntProp    : string { get { "abc" } }
}

module MTest
{
  F() : void
  {
    def x : int = "ab".StringProp;
    "abc".StringProp = 100;

    def y : string = 10.IntProp;
  }
}

注意:模块==静态类

你觉得呢?

EN

回答 1

Stack Overflow用户

发布于 2011-12-13 16:54:40

我不喜欢它,因为重复:

  1. 您应该以两点为单位指定Type2,
  2. 您应该以两点为单位指定PropName。

所以重构可能会稍微复杂一些。下面的方法怎么样?

代码语言:javascript
复制
module MExtension
{
  property PropName(this arg : Type1) : Type2
  {
    get
    {
      ...
    }
    set
    {
      ... = value
    }
  }
}

甚至是autoproperty:

代码语言:javascript
复制
module MExtension
{
  property PropName(this arg : Type1) : Type2 { get; set; }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8476336

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档