Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions runtime/src/main/java/dev/ionfusion/fusion/BaseValue.java
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,7 @@ public final String toString()
* @throws FusionException (when {@code throwOnConversionFailure})
* if this value cannot be ionized.
*/
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -294,12 +294,12 @@ static BaseBool strictEquals(Evaluator eval, Object left, Object right)
* @throws FusionException if something goes wrong during ionization.
*
* @see FusionRuntime#ionizeMaybe(Object, ValueFactory)
* @see FusionValue#copyToIonValueMaybe(Object, ValueFactory)
* @see FusionValue#copyToIonValueMaybe(Evaluator, Object, ValueFactory)
*/
static IonValue copyToIonValueMaybe(Object value, ValueFactory factory)
static IonValue copyToIonValueMaybe(Evaluator eval, Object value, ValueFactory factory)
throws FusionException
{
return FusionValue.copyToIonValue(value, factory, false);
return FusionValue.copyToIonValue(eval, value, factory, false);
}


Expand All @@ -313,12 +313,12 @@ static IonValue copyToIonValueMaybe(Object value, ValueFactory factory)
*
* @throws FusionException if the value cannot be converted to Ion.
*
* @see FusionValue#copyToIonValue(Object, ValueFactory)
* @see FusionValue#copyToIonValue(Evaluator, Object, ValueFactory)
*/
static IonValue copyToIonValue(Object value, ValueFactory factory)
static IonValue copyToIonValue(Evaluator eval, Object value, ValueFactory factory)
throws FusionException
{
return FusionValue.copyToIonValue(value, factory, true);
return FusionValue.copyToIonValue(eval, value, factory, true);
}


Expand All @@ -334,13 +334,13 @@ static IonValue copyToIonValue(Object value, ValueFactory factory)
* @throws FusionException if the value cannot be converted to Ion.
*
* @see FusionRuntime#ionize(Object, ValueFactory)
* @see FusionValue#copyToIonValue(Object, ValueFactory, boolean)
* @see FusionValue#copyToIonValue(Evaluator, Object, ValueFactory, boolean)
*/
static IonValue copyToIonValue(Object value, ValueFactory factory,
static IonValue copyToIonValue(Evaluator eval, Object value, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
return FusionValue.copyToIonValue(value,
return FusionValue.copyToIonValue(eval, value,
factory,
throwOnConversionFailure);
}
Expand Down
8 changes: 4 additions & 4 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionBlob.java
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ BaseBool looseEquals(Evaluator eval, Object right)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -130,7 +130,7 @@ BaseBool tightEquals(Evaluator eval, Object right)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -220,11 +220,11 @@ BaseBool looseEquals(Evaluator eval, Object right)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
IonValue iv = myValue.copyToIonValue(factory,
IonValue iv = myValue.copyToIonValue(eval, factory,
throwOnConversionFailure);
iv.setTypeAnnotations(getAnnotationsAsJavaStrings());
return iv;
Expand Down
10 changes: 5 additions & 5 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionBool.java
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ BaseBool looseEquals(Evaluator eval, Object right)
Boolean asJavaBoolean() { return null; }

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -153,7 +153,7 @@ BaseBool looseEquals(Evaluator eval, Object right)


@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -209,7 +209,7 @@ BaseBool looseEquals(Evaluator eval, Object right)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -296,11 +296,11 @@ BaseBool looseEquals(Evaluator eval, Object right)
Boolean asJavaBoolean() { return myValue.asJavaBoolean(); }

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
IonValue iv = myValue.copyToIonValue(factory,
IonValue iv = myValue.copyToIonValue(eval, factory,
throwOnConversionFailure);
iv.setTypeAnnotations(getAnnotationsAsJavaStrings());
return iv;
Expand Down
8 changes: 4 additions & 4 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionClob.java
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ BaseBool looseEquals(Evaluator eval, Object right)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -131,7 +131,7 @@ BaseBool tightEquals(Evaluator eval, Object right)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -221,11 +221,11 @@ BaseBool looseEquals(Evaluator eval, Object right)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
IonValue iv = myValue.copyToIonValue(factory,
IonValue iv = myValue.copyToIonValue(eval, factory,
throwOnConversionFailure);
iv.setTypeAnnotations(getAnnotationsAsJavaStrings());
return iv;
Expand Down
29 changes: 18 additions & 11 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionList.java
Original file line number Diff line number Diff line change
Expand Up @@ -364,10 +364,12 @@ static BaseSexp unsafeListToSexp(Evaluator eval, Object list)
/**
* @param list must be a list; it is not type-checked!
*/
static IonList unsafeCopyToIonList(Object list, ValueFactory factory)
static IonList unsafeCopyToIonList(Evaluator eval,
Object list,
ValueFactory factory)
throws FusionException
{
return unsafeCopyToIonList(list, factory, true);
return unsafeCopyToIonList(eval, list, factory, true);
}


Expand All @@ -376,11 +378,12 @@ static IonList unsafeCopyToIonList(Object list, ValueFactory factory)
*
* @return null if the list and its elements cannot be ionized.
*/
static IonList unsafeCopyToIonListMaybe(Object list,
static IonList unsafeCopyToIonListMaybe(Evaluator eval,
Object list,
ValueFactory factory)
throws FusionException
{
return unsafeCopyToIonList(list, factory, false);
return unsafeCopyToIonList(eval, list, factory, false);
}


Expand All @@ -389,13 +392,14 @@ static IonList unsafeCopyToIonListMaybe(Object list,
*
* @return null if the list and its elements cannot be ionized.
*/
static IonList unsafeCopyToIonList(Object list,
static IonList unsafeCopyToIonList(Evaluator eval,
Object list,
ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
BaseList base = (BaseList) list;
return base.copyToIonValue(factory, throwOnConversionFailure);
return base.copyToIonValue(eval, factory, throwOnConversionFailure);
}


Expand Down Expand Up @@ -662,15 +666,16 @@ SyntaxValue datumToSyntaxMaybe(Evaluator eval,
* UNLESS throwOnConversionFailure
*/
@Override
IonList copyToIonValue(ValueFactory factory,
IonList copyToIonValue(Evaluator eval,
ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
int len = size();
IonValue[] ions = new IonValue[len];
for (int i = 0; i < len; i++)
{
IonValue ion = copyToIonValue(myValues[i], factory,
IonValue ion = copyToIonValue(eval, myValues[i], factory,
throwOnConversionFailure);
if (ion == null)
{
Expand Down Expand Up @@ -953,7 +958,8 @@ BaseBool looseEquals2(Evaluator eval, BaseSexp left)
}

@Override
IonList copyToIonValue(ValueFactory factory,
IonList copyToIonValue(Evaluator eval,
ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -1158,7 +1164,8 @@ Object unsafeRef(Evaluator eval, int pos)
}

@Override
IonList copyToIonValue(ValueFactory factory,
IonList copyToIonValue(Evaluator eval,
ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand All @@ -1181,7 +1188,7 @@ IonList copyToIonValue(ValueFactory factory,
}
// else our elements have already been injected, copy as normal.

return super.copyToIonValue(factory, throwOnConversionFailure);
return super.copyToIonValue(eval, factory, throwOnConversionFailure);
}

@Override
Expand Down
6 changes: 4 additions & 2 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionNull.java
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,8 @@ SyntaxValue datumToSyntaxMaybe(Evaluator eval, SourceLocation loc)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval,
ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -115,7 +116,8 @@ public BaseSymbol[] getAnnotations()
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval,
ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down
26 changes: 13 additions & 13 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionNumber.java
Original file line number Diff line number Diff line change
Expand Up @@ -296,7 +296,7 @@ BaseBool looseEquals2(Evaluator eval, ActualFloat left)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -368,7 +368,7 @@ BaseBool isSame(Evaluator eval, Object right)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -436,7 +436,7 @@ BaseBool isSame(Evaluator eval, Object right)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -542,11 +542,11 @@ BaseBool looseEquals2(Evaluator eval, ActualFloat left)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
IonValue iv = myValue.copyToIonValue(factory,
IonValue iv = myValue.copyToIonValue(eval, factory,
throwOnConversionFailure);
iv.setTypeAnnotations(getAnnotationsAsJavaStrings());
return iv;
Expand Down Expand Up @@ -684,7 +684,7 @@ BaseBool looseEquals2(Evaluator eval, BaseInt left)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -810,7 +810,7 @@ BaseBool looseEquals2(Evaluator eval, ActualFloat left)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -912,11 +912,11 @@ BaseBool looseEquals2(Evaluator eval, ActualFloat left)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
IonValue iv = myValue.copyToIonValue(factory,
IonValue iv = myValue.copyToIonValue(eval, factory,
throwOnConversionFailure);
iv.setTypeAnnotations(getAnnotationsAsJavaStrings());
return iv;
Expand Down Expand Up @@ -1056,7 +1056,7 @@ BaseNumber multiply(BaseInt left)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -1219,7 +1219,7 @@ BaseNumber multiply(BaseInt left)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
Expand Down Expand Up @@ -1377,11 +1377,11 @@ BaseNumber multiply(BaseInt left)
}

@Override
IonValue copyToIonValue(ValueFactory factory,
IonValue copyToIonValue(Evaluator eval, ValueFactory factory,
boolean throwOnConversionFailure)
throws FusionException
{
IonValue iv = myValue.copyToIonValue(factory,
IonValue iv = myValue.copyToIonValue(eval, factory,
throwOnConversionFailure);
iv.setTypeAnnotations(getAnnotationsAsJavaStrings());
return iv;
Expand Down
Loading