Opened 18 years ago

Closed 18 years ago

#40 closed タスク (fixed)

関数の戻り値オブジェクトのメンバ・メソッドを一時オブジェクトを介さずに参照できるようにする。

Reported by: dai Owned by: dai
Priority: 中-major Milestone: AB5 CP4
Component: Compiler Version:
Keywords: Cc:

Description

Function proc() As String
End Function

proc().Length

このような記述を可能にする。

Change History (3)

comment:1 by dai, 18 years ago

Status: newassigned

comment:2 by dai, 18 years ago

途中まで実装完了。このようなプログラムが動くようになってきた。

Dim rc As RECT
Function GetRect() ByRef As RECT
	Return ByVal VarPtr(rc)
End Function

' グローバル関数
Dim a = 0 As Long
a=GetRect().left

残っている課題は下記の通り。

  • 左辺値に戻り値オブジェクトのメソッドが来たとき
  • 一時オブジェクトの解放処理
  • プロパティ・インデクサの戻り値も同様に参照可能にする

comment:3 by dai, 18 years ago

Resolution: fixed
Status: assignedclosed

[217]にて対応。

グローバル関数・クラスメソッド・プロパティの戻り値がオブジェクトまたは構造体だったとき、立て続けにメンバやメソッドを指定できるようになった。

Note: See TracTickets for help on using tickets.