代码之家  ›  专栏  ›  技术社区  ›  MKaama

法罗州腐败,如何保存我的代码?

  •  0
  • MKaama  · 技术社区  · 6 年前

    在使用DynamicComposableModel并在调试器中编辑我的方法后,我的Pharo 6.1映像已达到以下状态:

    Instance of SpecLayout did not understand #visibleSlots
    

    Instance of SpecLayout did not understand #instVarNames
    

    . 由于这些错误,我无法“归档”我的代码。我甚至不能浏览我的类,它实际上被称为“UIVidya”,应该由

    ComposableModel subclass: #UIVidya
        instanceVariableNames: 'vidya listE editE tabmgr'
        classVariableNames: ''
        poolDictionaries: ''
        category: 'vkVidya'!
    

    . 在破碎的图像中, UIVidya classLayout 回报 规格布局 . 以健康的形象, 维吾尔语类布局 回报 固定布局 . 我不是故意改变的,甚至不知道是怎么改变的。我能在不放弃最后的改变的情况下,就地修复我破碎的法老形象吗?

    2 回复  |  直到 6 年前
        1
  •  0
  •   Leandro Caniglia Charlie    6 年前

    看起来你的形象没有被破坏。第二条错误消息表明 SpecLayout 其中 class (大概是 规格布局 )是预期的。尝试定义方法

    instVarNames
      ^self class instVarNames
    
    visibleSlots
      ^self class visibleSlots
    

    在实例方面 规格布局 看看你能不能继续找那个破碎的东西。你可以带着更多的信息回来。一旦你修复了这个问题,别忘了删除新的错误方法。

        2
  •  0
  •   MKaama    6 年前

    我在操场上这样做可以恢复常态:

    UIVidya layout: sdfgh
    

    (与 UIVidya layout: nil ). 感谢您的关注,真正有帮助的是积极使用 系统浏览器 游乐场 比较断开和未断开的Pharo实例。现在我可以“归档”我的代码了!

    编辑:

    问题来自于 https://benjamin.vanryseghem.com/projects/spec/docs/dynamic/ 其中包括发送 layout: . 不要在现代航标上那样做!

    推荐文章