generateAssignmentSource assigns interface methods to iface dest
This commit is contained in:
parent
91eb3e8e9e
commit
6fa8adf871
|
@ -81,7 +81,7 @@ func (this *generator) generateAssignmentSource (
|
|||
// assign behaviors
|
||||
for _, name := range toBase.BehaviorOrder {
|
||||
toBehaviorField := this.getInterfaceBehavior (
|
||||
toBase, source,
|
||||
toBase, destination,
|
||||
irToType, name)
|
||||
fromBehavior, err := this.method(fromReferenced.Name, name)
|
||||
if err != nil { return nil, err }
|
||||
|
@ -102,7 +102,7 @@ func (this *generator) generateAssignmentSource (
|
|||
// assign behaviors
|
||||
for _, name := range toBase.BehaviorOrder {
|
||||
toBehaviorField := this.getInterfaceBehavior (
|
||||
toBase, source,
|
||||
toBase, destination,
|
||||
irToType, name)
|
||||
fromBehavior, err := this.method(fromType.Name, name)
|
||||
if err != nil { return nil, err }
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
package generator
|
||||
|
||||
import "testing"
|
||||
|
||||
func TestInterfaceBasic (test *testing.T) {
|
||||
testString (test,
|
||||
`
|
||||
`,
|
||||
`
|
||||
Numbered: ([number]: Int)
|
||||
Number: Int
|
||||
Number.[number]: Int = [.this]
|
||||
|
||||
[main]:Index = {
|
||||
num:Number = 5
|
||||
if:Numbered = num
|
||||
if.[number]
|
||||
}
|
||||
`)
|
||||
}
|
Loading…
Reference in New Issue