Skip to content

Commit a17e158

Browse files
FieldLinkDefinition refactoring
1 parent 615d858 commit a17e158

29 files changed

+265
-209
lines changed

debug/src/main/java/network/aika/debug/DumpNetwork.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import network.aika.activations.Activation;
55
import network.aika.activations.Link;
66
import network.aika.fields.defs.FieldDefinition;
7-
import network.aika.fields.link.FieldLinkDefinition;
7+
import network.aika.fields.defs.FieldLinkDefinition;
88
import network.aika.fields.field.Field;
99
import network.aika.type.ObjImpl;
1010

fields/src/main/java/network/aika/fields/AbstractFunctionDefinition.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,7 @@
1818

1919
import network.aika.fields.defs.FixedArgumentsFieldDefinition;
2020
import network.aika.fields.field.Field;
21-
import network.aika.fields.link.ArgFieldLinkDefinition;
22-
import network.aika.fields.link.FieldLinkDefinition;
21+
import network.aika.fields.defs.FieldLinkDefinition;
2322
import network.aika.type.Obj;
2423
import network.aika.type.Type;
2524

@@ -40,11 +39,11 @@ public AbstractFunctionDefinition(T objectType, String name, int numArgs, double
4039
super(objectType, name, numArgs, tolerance);
4140
}
4241

43-
protected abstract double computeUpdate(O obj, ArgFieldLinkDefinition<T, O, ?, ?> fl, double u);
42+
protected abstract double computeUpdate(O obj, FieldLinkDefinition<?, ?, T, O> fl, double u);
4443

4544
@Override
46-
public void receiveUpdate(Field<T, O> field, FieldLinkDefinition<T, O, ?, ?> fl, double u) {
47-
double update = computeUpdate(field.getObject(), (ArgFieldLinkDefinition<T, O, ?, ?>) fl, u);
45+
public void transmit(Field<T, O> field, FieldLinkDefinition<?, ?, T, O> fl, double u) {
46+
double update = computeUpdate(field.getObject(), fl, u);
4847

4948
receiveUpdate(field, update);
5049
}

fields/src/main/java/network/aika/fields/Addition.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,8 @@
1616
*/
1717
package network.aika.fields;
1818

19-
import network.aika.fields.field.Field;
19+
import network.aika.fields.defs.FieldLinkDefinition;
2020
import network.aika.type.Type;
21-
import network.aika.fields.link.ArgFieldLinkDefinition;
2221
import network.aika.type.Obj;
2322

2423
/**
@@ -44,7 +43,7 @@ public Addition(T ref, String name) {
4443
}
4544

4645
@Override
47-
protected double computeUpdate(O obj, ArgFieldLinkDefinition<T, O, ?, ?> fl, double u) {
46+
protected double computeUpdate(O obj, FieldLinkDefinition<?, ?, T, O> fl, double u) {
4847
return u;
4948
}
5049
}

fields/src/main/java/network/aika/fields/Division.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616
*/
1717
package network.aika.fields;
1818

19+
import network.aika.fields.defs.FieldLinkDefinition;
1920
import network.aika.fields.field.Field;
20-
import network.aika.fields.link.ArgFieldLinkDefinition;
2121
import network.aika.type.Obj;
2222
import network.aika.type.Type;
2323

@@ -56,7 +56,7 @@ public <RT extends Type<RT, RO>, RO extends Obj<RT, RO>> void initializeField(Fi
5656
}
5757

5858
@Override
59-
protected double computeUpdate(O obj, ArgFieldLinkDefinition<T, O, ?, ?> fl, double u) {
59+
protected double computeUpdate(O obj, FieldLinkDefinition<?, ?, T, O> fl, double u) {
6060
if(fl.getArgument() == 0) {
6161
double divisor = getInputValueByArg(obj, 1);
6262
if(divisor == 0.0)

fields/src/main/java/network/aika/fields/ExponentialFunction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616
*/
1717
package network.aika.fields;
1818

19+
import network.aika.fields.defs.FieldLinkDefinition;
1920
import network.aika.fields.field.Field;
20-
import network.aika.fields.link.ArgFieldLinkDefinition;
2121
import network.aika.type.Obj;
2222
import network.aika.type.Type;
2323

@@ -51,7 +51,7 @@ public <RT extends Type<RT, RO>, RO extends Obj<RT, RO>> void initializeField(Fi
5151
}
5252

5353
@Override
54-
protected double computeUpdate(O obj, ArgFieldLinkDefinition<T, O, ?, ?> fl, double u) {
54+
protected double computeUpdate(O obj, FieldLinkDefinition<?, ?, T, O> fl, double u) {
5555
return Math.exp(u);
5656
}
5757
}

fields/src/main/java/network/aika/fields/FieldActivationFunction.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,7 @@
1616
*/
1717
package network.aika.fields;
1818

19-
import network.aika.fields.field.Field;
20-
import network.aika.fields.link.ArgFieldLinkDefinition;
19+
import network.aika.fields.defs.FieldLinkDefinition;
2120
import network.aika.type.Obj;
2221
import network.aika.type.Type;
2322

@@ -52,8 +51,8 @@ public FieldActivationFunction(T ref, String name, ActivationFunction actFunctio
5251
}
5352

5453
@Override
55-
protected double computeUpdate(O obj, ArgFieldLinkDefinition<T, O, ?, ?> fl, double u) {
54+
protected double computeUpdate(O obj, FieldLinkDefinition<?, ?, T, O> fl, double u) {
5655
double value = obj.getOrCreateField(this).getValue();
57-
return actFunction.f(fl.getUpdatedInputValue(obj)) - value;
56+
return actFunction.f(fl.getRevered().getUpdatedInputValue(obj)) - value;
5857
}
5958
}

fields/src/main/java/network/aika/fields/IdentityFunction.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616
*/
1717
package network.aika.fields;
1818

19+
import network.aika.fields.defs.FieldLinkDefinition;
1920
import network.aika.type.Type;
20-
import network.aika.fields.link.ArgFieldLinkDefinition;
2121
import network.aika.type.Obj;
2222

2323
/**
@@ -44,7 +44,7 @@ public IdentityFunction(T ref, String name) {
4444
}
4545

4646
@Override
47-
protected double computeUpdate(O obj, ArgFieldLinkDefinition<T, O, ?, ?> fl, double u) {
47+
protected double computeUpdate(O obj, FieldLinkDefinition<?, ?, T, O> fl, double u) {
4848
return u;
4949
}
5050
}

fields/src/main/java/network/aika/fields/InputField.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616
*/
1717
package network.aika.fields;
1818

19+
import network.aika.fields.defs.FieldLinkDefinition;
1920
import network.aika.type.Type;
20-
import network.aika.fields.link.ArgFieldLinkDefinition;
2121
import network.aika.type.Obj;
2222

2323
/**
@@ -44,7 +44,7 @@ public InputField(T ref, String name) {
4444
}
4545

4646
@Override
47-
protected double computeUpdate(O obj, ArgFieldLinkDefinition<T, O, ?, ?> fl, double u) {
47+
protected double computeUpdate(O obj, FieldLinkDefinition<?, ?, T, O> fl, double u) {
4848
return 0;
4949
}
5050
}

fields/src/main/java/network/aika/fields/InvertFunction.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616
*/
1717
package network.aika.fields;
1818

19+
import network.aika.fields.defs.FieldLinkDefinition;
1920
import network.aika.type.Type;
20-
import network.aika.fields.link.ArgFieldLinkDefinition;
2121
import network.aika.type.Obj;
2222

2323
/**
@@ -45,8 +45,8 @@ public InvertFunction(T ref, String name) {
4545
}
4646

4747
@Override
48-
protected double computeUpdate(O obj, ArgFieldLinkDefinition<T, O, ?, ?> fl, double u) {
48+
protected double computeUpdate(O obj, FieldLinkDefinition<?, ?, T, O> fl, double u) {
4949
double value = obj.getOrCreateField(this).getValue();
50-
return (1.0 - fl.getUpdatedInputValue(obj)) - value;
50+
return (1.0 - fl.getRevered().getUpdatedInputValue(obj)) - value;
5151
}
5252
}

fields/src/main/java/network/aika/fields/Multiplication.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@
1616
*/
1717
package network.aika.fields;
1818

19+
import network.aika.fields.defs.FieldLinkDefinition;
1920
import network.aika.fields.field.Field;
2021
import network.aika.type.Type;
21-
import network.aika.fields.link.ArgFieldLinkDefinition;
2222
import network.aika.type.Obj;
2323

2424
/**
@@ -53,7 +53,7 @@ public <RT extends Type<RT, RO>, RO extends Obj<RT, RO>> void initializeField(Fi
5353
}
5454

5555
@Override
56-
protected double computeUpdate(O obj, ArgFieldLinkDefinition<T, O, ?, ?> fl, double u) {
56+
protected double computeUpdate(O obj, FieldLinkDefinition<?, ?, T, O> fl, double u) {
5757
return u * getInputValueByArg(
5858
obj,
5959
fl.getArgument() == 0 ?

0 commit comments

Comments
 (0)