<feed xmlns='http://www.w3.org/2005/Atom'>
<title>assembler, branch v2.1.1</title>
<subtitle>Rust library for parsing assembly languages</subtitle>
<id>https://code.benbridle.com/assembler/atom?h=v2.1.1</id>
<link rel='self' href='https://code.benbridle.com/assembler/atom?h=v2.1.1'/>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/'/>
<updated>2025-03-17T21:59:40Z</updated>
<entry>
<title>Update version to 2.1.1</title>
<updated>2025-03-17T21:59:40Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-17T21:59:40Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=87cdf5e88fd1d0aaddb91e216c47344effd63ed3'/>
<id>urn:sha1:87cdf5e88fd1d0aaddb91e216c47344effd63ed3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix Tokeniser::end_of_line method</title>
<updated>2025-03-16T22:44:29Z</updated>
<author>
<name>Ben Bridle</name>
<email>bridle.benjamin@gmail.com</email>
</author>
<published>2025-03-16T22:44:29Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=eb45fad24cf28035f526eda45cbd5fb2ff1c337d'/>
<id>urn:sha1:eb45fad24cf28035f526eda45cbd5fb2ff1c337d</id>
<content type='text'>
The method hadn't been changed since back when the chars field was a
stack of characters that were removed as they were consumed. The method
now works with the current design of the Tokeniser.
</content>
</entry>
<entry>
<title>Update version to 2.1.0</title>
<updated>2025-03-11T03:18:33Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-11T03:18:33Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=c5f60b7ff45ced7c8b8519bc8fcf681486ad09fa'/>
<id>urn:sha1:c5f60b7ff45ced7c8b8519bc8fcf681486ad09fa</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Implement source chains</title>
<updated>2025-03-11T03:18:01Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-11T03:18:01Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=a9e9dd452e23fa2e816df926a56c1f743eb32488'/>
<id>urn:sha1:a9e9dd452e23fa2e816df926a56c1f743eb32488</id>
<content type='text'>
A SourceSpan can now contain a child SourceSpan, ad infinitum, in order
to represent a chain of locations. The report_source_issue function
has been changed to print the entire chain, instead of just one
SourceSpan.

The report_source_issue function has also been changed to correctly
print SourceSpans that extend across multiple source lines.
</content>
</entry>
<entry>
<title>Prevent duplicate parent and child entries for source units</title>
<updated>2025-03-11T03:13:23Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-11T03:13:23Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=bd7955cbc1c1746f37dcb0742603994fd2e04c90'/>
<id>urn:sha1:bd7955cbc1c1746f37dcb0742603994fd2e04c90</id>
<content type='text'>
The parent and child collections for hierarchical source units were
previously vecs, and would receive one entry for every symbol matched.
This was easily leading to many dozens of duplicate entries per unit,
which, while not impacting performance, seemed wasteful. The collection
types were changed to HashSets to prevent the collection of duplicate
entries.
</content>
</entry>
<entry>
<title>Make output of report_source_issue more concise</title>
<updated>2025-03-10T03:31:06Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-10T03:31:06Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=6fb6f2836232fe78dce507fa899629bbefb7b449'/>
<id>urn:sha1:6fb6f2836232fe78dce507fa899629bbefb7b449</id>
<content type='text'>
Instead of displaying two locations for the same error, only show the
in_merged source location if there is no in_source location.
</content>
</entry>
<entry>
<title>Implement Borrow and BorrowMut for Tracked</title>
<updated>2025-03-09T05:20:06Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-09T05:20:06Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=5e332adb606074da1976c8ce6e32b94ba222bc82'/>
<id>urn:sha1:5e332adb606074da1976c8ce6e32b94ba222bc82</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Make Tokeniser::eat_until even more general</title>
<updated>2025-03-08T03:48:33Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-08T03:48:33Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=53dffaf3fe18f70151b23418ff80ae8904fae779'/>
<id>urn:sha1:53dffaf3fe18f70151b23418ff80ae8904fae779</id>
<content type='text'>
The eat_until method of Tokeniser has been renamed to track_until, and
it no longer consumes characters by itself. The predicate closure is no
longer limited to checking one character at a time, it can look ahead
for multi-character sequences when used with the new eat_if method.
</content>
</entry>
<entry>
<title>Add Tokeniser::eat_if method</title>
<updated>2025-03-08T03:46:18Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-08T03:46:18Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=e1dea1faf3e29655c008bf139d2a9acf3229df53'/>
<id>urn:sha1:e1dea1faf3e29655c008bf139d2a9acf3229df53</id>
<content type='text'>
This method is used for consuming a multi-character sequence only if
that sequence matches a passed string.
</content>
</entry>
<entry>
<title>Implement Hash for Tracked</title>
<updated>2025-03-08T03:44:41Z</updated>
<author>
<name>Ben Bridle</name>
<email>ben@derelict.engineering</email>
</author>
<published>2025-03-08T03:44:41Z</published>
<link rel='alternate' type='text/html' href='https://code.benbridle.com/assembler/commit/?id=a319d78739b2efccd9f0688c6c0f070ed085f8a1'/>
<id>urn:sha1:a319d78739b2efccd9f0688c6c0f070ed085f8a1</id>
<content type='text'>
</content>
</entry>
</feed>
