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
12 changes: 6 additions & 6 deletions runtime/src/main/java/dev/ionfusion/fusion/BaseValue.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
import dev.ionfusion.fusion.FusionBool.BaseBool;
import dev.ionfusion.fusion.FusionSymbol.BaseSymbol;
import dev.ionfusion.runtime.base.FusionException;
import dev.ionfusion.runtime.base.SourceLocation;
import dev.ionfusion.runtime.base.ResourcePosition;
import dev.ionfusion.runtime.embed.FusionRuntime;
import java.io.IOException;

Expand Down Expand Up @@ -77,9 +77,9 @@ BaseBool strictEquals(Evaluator eval, Object right)
}


SyntaxValue makeOriginalSyntax(Evaluator eval, SourceLocation loc)
SyntaxValue makeOriginalSyntax(Evaluator eval, ResourcePosition pos)
{
return SimpleSyntaxValue.makeOriginalSyntax(eval, loc, this);
return SimpleSyntaxValue.makeOriginalSyntax(eval, pos, this);
}


Expand All @@ -95,10 +95,10 @@ SyntaxValue makeOriginalSyntax(Evaluator eval, SourceLocation loc)
*/
SyntaxValue datumToSyntaxMaybe(Evaluator eval,
SyntaxSymbol context,
SourceLocation loc)
ResourcePosition pos)
throws FusionException
{
SyntaxValue stx = datumToSyntaxMaybe(eval, loc);
SyntaxValue stx = datumToSyntaxMaybe(eval, pos);
if (stx == null) return null;

return Syntax.applyContext(eval, context, stx);
Expand All @@ -107,7 +107,7 @@ SyntaxValue datumToSyntaxMaybe(Evaluator eval,
/**
* @return null if something in the datum can't be converted into syntax.
*/
SyntaxValue datumToSyntaxMaybe(Evaluator eval, SourceLocation loc)
SyntaxValue datumToSyntaxMaybe(Evaluator eval, ResourcePosition pos)
throws FusionException
{
return null;
Expand Down
6 changes: 3 additions & 3 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionBool.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
import com.amazon.ion.ValueFactory;
import dev.ionfusion.fusion.FusionSymbol.BaseSymbol;
import dev.ionfusion.runtime.base.FusionException;
import dev.ionfusion.runtime.base.SourceLocation;
import dev.ionfusion.runtime.base.ResourcePosition;
import dev.ionfusion.runtime.embed.TopLevel;
import java.io.IOException;

Expand Down Expand Up @@ -53,9 +53,9 @@ public BaseBool annotate(Evaluator eval, BaseSymbol[] annotations)
}

@Override
SyntaxValue datumToSyntaxMaybe(Evaluator eval, SourceLocation loc)
SyntaxValue datumToSyntaxMaybe(Evaluator eval, ResourcePosition pos)
{
return makeSyntax(eval, loc, this);
return makeSyntax(eval, pos, this);
}
}

Expand Down
12 changes: 6 additions & 6 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionList.java
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
import dev.ionfusion.fusion.FusionSexp.BaseSexp;
import dev.ionfusion.fusion.FusionSymbol.BaseSymbol;
import dev.ionfusion.runtime.base.FusionException;
import dev.ionfusion.runtime.base.SourceLocation;
import dev.ionfusion.runtime.base.ResourcePosition;
import java.io.IOException;
import java.util.Arrays;
import java.util.Iterator;
Expand Down Expand Up @@ -607,9 +607,9 @@ BaseBool looseEquals2(Evaluator eval, BaseSexp left)
}

@Override
SyntaxValue makeOriginalSyntax(Evaluator eval, SourceLocation loc)
SyntaxValue makeOriginalSyntax(Evaluator eval, ResourcePosition pos)
{
return SyntaxList.makeOriginal(eval, loc, this);
return SyntaxList.makeOriginal(eval, pos, this);
}

/**
Expand All @@ -622,7 +622,7 @@ SyntaxValue makeOriginalSyntax(Evaluator eval, SourceLocation loc)
@Override
SyntaxValue datumToSyntaxMaybe(Evaluator eval,
SyntaxSymbol context,
SourceLocation loc)
ResourcePosition pos)
throws FusionException
{
SyntaxList stx;
Expand All @@ -639,7 +639,7 @@ SyntaxValue datumToSyntaxMaybe(Evaluator eval,
{
Object rawChild = unsafeRef(eval, i);
Object child =
Syntax.datumToSyntaxMaybe(eval, rawChild, context, loc);
Syntax.datumToSyntaxMaybe(eval, rawChild, context, pos);
if (child == null)
{
// Hit something that's not syntax-able
Expand All @@ -650,7 +650,7 @@ SyntaxValue datumToSyntaxMaybe(Evaluator eval,

BaseSymbol[] anns = getAnnotations();
Object list = immutableList(eval, anns, children);
stx = SyntaxList.make(eval, loc, list);
stx = SyntaxList.make(eval, pos, list);
}

// TODO This should retain context, but not push it
Expand Down
6 changes: 3 additions & 3 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionLob.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

import dev.ionfusion.fusion.FusionBool.BaseBool;
import dev.ionfusion.runtime.base.FusionException;
import dev.ionfusion.runtime.base.SourceLocation;
import dev.ionfusion.runtime.base.ResourcePosition;
import dev.ionfusion.runtime.embed.TopLevel;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
Expand Down Expand Up @@ -70,9 +70,9 @@ BaseBool looseEquals(Evaluator eval, Object right)
}

@Override
SyntaxValue datumToSyntaxMaybe(Evaluator eval, SourceLocation loc)
SyntaxValue datumToSyntaxMaybe(Evaluator eval, ResourcePosition pos)
{
return makeSyntax(eval, loc, this);
return makeSyntax(eval, pos, this);
}
}

Expand Down
6 changes: 3 additions & 3 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionNull.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
import dev.ionfusion.fusion.FusionBool.BaseBool;
import dev.ionfusion.fusion.FusionSymbol.BaseSymbol;
import dev.ionfusion.runtime.base.FusionException;
import dev.ionfusion.runtime.base.SourceLocation;
import dev.ionfusion.runtime.base.ResourcePosition;
import dev.ionfusion.runtime.embed.TopLevel;
import java.io.IOException;

Expand Down Expand Up @@ -62,9 +62,9 @@ BaseBool looseEquals(Evaluator eval, Object right)
}

@Override
SyntaxValue datumToSyntaxMaybe(Evaluator eval, SourceLocation loc)
SyntaxValue datumToSyntaxMaybe(Evaluator eval, ResourcePosition pos)
{
return makeSyntax(eval, loc, this);
return makeSyntax(eval, pos, this);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
import dev.ionfusion.fusion.FusionBool.BaseBool;
import dev.ionfusion.fusion.FusionSymbol.BaseSymbol;
import dev.ionfusion.runtime.base.FusionException;
import dev.ionfusion.runtime.base.SourceLocation;
import dev.ionfusion.runtime.base.ResourcePosition;
import dev.ionfusion.runtime.embed.TopLevel;
import java.io.IOException;
import java.math.BigDecimal;
Expand Down Expand Up @@ -114,9 +114,9 @@ BaseBool looseEquals2(Evaluator eval, ActualFloat left)
}

@Override
SyntaxValue datumToSyntaxMaybe(Evaluator eval, SourceLocation loc)
SyntaxValue datumToSyntaxMaybe(Evaluator eval, ResourcePosition pos)
{
return makeSyntax(eval, loc, this);
return makeSyntax(eval, pos, this);
}
}

Expand Down
24 changes: 12 additions & 12 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionSexp.java
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
import dev.ionfusion.fusion.FusionSequence.BaseSequence;
import dev.ionfusion.fusion.FusionSymbol.BaseSymbol;
import dev.ionfusion.runtime.base.FusionException;
import dev.ionfusion.runtime.base.SourceLocation;
import dev.ionfusion.runtime.base.ResourcePosition;
import dev.ionfusion.runtime.embed.TopLevel;
import java.io.IOException;
import java.util.LinkedList;
Expand Down Expand Up @@ -538,20 +538,20 @@ BaseBool looseEquals(Evaluator eval, Object right)
}

@Override
SyntaxValue makeOriginalSyntax(Evaluator eval, SourceLocation loc)
SyntaxValue makeOriginalSyntax(Evaluator eval, ResourcePosition pos)
{
return SyntaxSexp.makeOriginal(eval, loc, this);
return SyntaxSexp.makeOriginal(eval, pos, this);
}

@Override
SyntaxValue datumToSyntaxMaybe(Evaluator eval,
SyntaxSymbol context,
SourceLocation loc)
ResourcePosition pos)
throws FusionException
{
assert size(eval) == 0;

SyntaxValue stx = SyntaxSexp.make(eval, loc, this);
SyntaxValue stx = SyntaxSexp.make(eval, pos, this);
return Syntax.applyContext(eval, context, stx);
}

Expand Down Expand Up @@ -936,23 +936,23 @@ else if (tail instanceof EmptySexp)
*/
private BaseSexp toPairOfSyntaxMaybe(Evaluator eval,
SyntaxSymbol context,
SourceLocation loc)
ResourcePosition pos)
throws FusionException
{
SyntaxValue head =
Syntax.datumToSyntaxMaybe(eval, myHead, context, loc);
Syntax.datumToSyntaxMaybe(eval, myHead, context, pos);
if (head == null) return null;

Object tail = myTail;
if (isPair(eval, tail))
{
tail = ((ImmutablePair)tail).toPairOfSyntaxMaybe(eval,
context,
loc);
pos);
}
else if (! isEmptySexp(eval, tail))
{
tail = Syntax.datumToSyntaxMaybe(eval, tail, context, loc);
tail = Syntax.datumToSyntaxMaybe(eval, tail, context, pos);
}
if (tail == null) return null;

Expand All @@ -968,13 +968,13 @@ else if (! isEmptySexp(eval, tail))
@Override
SyntaxValue datumToSyntaxMaybe(Evaluator eval,
SyntaxSymbol context,
SourceLocation loc)
ResourcePosition pos)
throws FusionException
{
BaseSexp newPair = toPairOfSyntaxMaybe(eval, context, loc);
BaseSexp newPair = toPairOfSyntaxMaybe(eval, context, pos);
if (newPair == null) return null;

SyntaxValue stx = SyntaxSexp.make(eval, loc, newPair);
SyntaxValue stx = SyntaxSexp.make(eval, pos, newPair);

// TODO This should retain context, but not push it
// down to the current children (which already have it).
Expand Down
10 changes: 5 additions & 5 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionString.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
import dev.ionfusion.fusion.FusionSymbol.BaseSymbol;
import dev.ionfusion.fusion.FusionText.BaseText;
import dev.ionfusion.runtime.base.FusionException;
import dev.ionfusion.runtime.base.SourceLocation;
import dev.ionfusion.runtime.base.ResourcePosition;
import dev.ionfusion.runtime.embed.TopLevel;
import java.io.IOException;
import java.nio.ByteBuffer;
Expand Down Expand Up @@ -95,15 +95,15 @@ BaseBool tightEquals(Evaluator eval, Object right)
}

@Override
SyntaxString makeOriginalSyntax(Evaluator eval, SourceLocation loc)
SyntaxString makeOriginalSyntax(Evaluator eval, ResourcePosition pos)
{
return SyntaxString.makeOriginal(eval, loc, this);
return SyntaxString.makeOriginal(eval, pos, this);
}

@Override
SyntaxString datumToSyntaxMaybe(Evaluator eval, SourceLocation loc)
SyntaxString datumToSyntaxMaybe(Evaluator eval, ResourcePosition pos)
{
return SyntaxString.make(eval, loc, this);
return SyntaxString.make(eval, pos, this);
}


Expand Down
23 changes: 12 additions & 11 deletions runtime/src/main/java/dev/ionfusion/fusion/FusionStruct.java
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
import dev.ionfusion.fusion.FusionSymbol.BaseSymbol;
import dev.ionfusion.runtime._private.util.hamt.MultiHashTrie;
import dev.ionfusion.runtime.base.FusionException;
import dev.ionfusion.runtime.base.SourceLocation;
import dev.ionfusion.runtime.base.ResourcePosition;
import java.io.IOException;
import java.util.Collections;
import java.util.Iterator;
Expand Down Expand Up @@ -583,18 +583,18 @@ public boolean isAnyNull()
}

@Override
SyntaxValue makeOriginalSyntax(Evaluator eval, SourceLocation loc)
SyntaxValue makeOriginalSyntax(Evaluator eval, ResourcePosition pos)
{
return SyntaxStruct.makeOriginal(eval, loc, this);
return SyntaxStruct.makeOriginal(eval, pos, this);
}

@Override
SyntaxValue datumToSyntaxMaybe(Evaluator eval,
SyntaxSymbol context,
SourceLocation loc)
ResourcePosition pos)
throws FusionException
{
SyntaxValue stx = SyntaxStruct.make(eval, loc, this);
SyntaxValue stx = SyntaxStruct.make(eval, pos, this);

// TODO This should retain context, but not push it
// down to the current children (which already have it).
Expand Down Expand Up @@ -872,7 +872,7 @@ NonNullImmutableStruct transformFields(Evaluator eval,
}

@Override
SyntaxValue makeOriginalSyntax(Evaluator eval, SourceLocation loc)
SyntaxValue makeOriginalSyntax(Evaluator eval, ResourcePosition pos)
{
throw new IllegalStateException("Cannot wrap mutable struct as syntax");
}
Expand All @@ -891,11 +891,12 @@ private static final class VisitFailure
@Override
SyntaxValue datumToSyntaxMaybe(final Evaluator eval,
final SyntaxSymbol context,
final SourceLocation loc)
final ResourcePosition pos)
throws FusionException
{
StructFieldVisitor visitor = (name, value) -> {
SyntaxValue converted = Syntax.datumToSyntaxMaybe(eval, value, context, loc);
SyntaxValue converted = Syntax.datumToSyntaxMaybe(eval, value, context,
pos);
if (converted == null)
{
// Hit something that's not syntax-able
Expand All @@ -907,7 +908,7 @@ SyntaxValue datumToSyntaxMaybe(final Evaluator eval,
try
{
ImmutableStruct datum = transformFields(eval, visitor);
return SyntaxStruct.make(eval, loc, datum);
return SyntaxStruct.make(eval, pos, datum);
}
catch (VisitFailure e) // This is crazy.
{
Expand Down Expand Up @@ -1171,9 +1172,9 @@ private NonNullImmutableStruct(BaseSymbol[] annotations)
}

@Override
SyntaxValue makeOriginalSyntax(Evaluator eval, SourceLocation loc)
SyntaxValue makeOriginalSyntax(Evaluator eval, ResourcePosition pos)
{
return SyntaxStruct.makeOriginal(eval, loc, this);
return SyntaxStruct.makeOriginal(eval, pos, this);
}

@Override
Expand Down
Loading
Loading