Ecosyste.ms: OpenCollective
An open API service for software projects hosted on Open Collective.
github.com/BioJulia/Automa.jl
A julia code generator for regular expressions
https://github.com/BioJulia/Automa.jl
93c2813db07a0a556f97392381daeefe65e8ba0d authored 12 months ago by Jakob Nybo Nissen <[email protected]>
Without this bugfix, any code that throws the default error, but which haven't
imported the symb...
docs(Theory): Fix NFA state number errors, spelling, and add alt-texts to images
docs(Regex): f...
2d30fac3d69ce9a98190f6318deff15ecdbb1a01 authored about 1 year ago by SundaraRaman R <[email protected]>01f608e5ff8c2476d45e53f46637c5dc06834047 authored about 1 year ago by SundaraRaman R <[email protected]>
In BioJulia discussion 11, and BioJulia/Contributing, we've decided to make the
template less ve...
456eeef78f2955ec8e7e669cfbc3fada31d3f3b4 authored about 1 year ago by Jakob Nybo Nissen <[email protected]>
5ed0767355c2aa18f35b6b830f0c7f51c64db04c authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
cb54990e53eb1272054a81870f2ef3961535ae68 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
504497ad3644e5c3ec68fee4f003624e55e8b24f authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
Issue 125 revealed several issues with the existing tokenizer implementation,
several of which a...
Correct automa image link.
733b8cf6777070c8da83dc2f843e931bb8a82b19 authored over 1 year ago by Ciarán O'Mara <[email protected]>
Special macros like `@abspos` previously inserted an assert that the buffer's
mark had been set....
49004a6368d8f3806dc79067cbc461b12d1b5e8d authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
I've come to the conclusion that Julia does not make it possible to robustly
check what CPU inst...
78831496ec739316efda42ddf034b8871e62262a authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
64abea8d6aa6f0a476bfe56908007c1d79fbdf55 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
Add macros with the same name as pseudomacros.
These return a string explaining that the pseudom...
Instead of buffering an entire line, simply keep track of the number of columns
cleared from the...
efd3344d22e8ed9d571a6b7e6dd61cf2080dd257 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
The existence of these as real macros does not actually work with arbitrary
`CodeGenContext`s.
T...
Previously, `Machine`s contained the fields `start_state::Int` and
`states::UnitRange{Int}`. How...
This module doesn't make any sense in v1 for two reasons:
First, we can not longer consider the ...
ac02cdc58c9e659ef224ae85bec136ac82f532fe authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
b7ef8ce13b76ebd5e1d5f49f3c8e58530c833658 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
9d2222e2d478361218d3e97a9ae34fae844b33d8 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
074d6af4de925fa19caea5fe96c3c521447f55db authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
d032b16538e19e420295aea1dfeb20d8d8544dc5 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
fce5489e3d2584ac78fb00a71b3f180f448444fe authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
4966b66f0b7481665f6edac87d464410296f0afe authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
666c8b4f8afd11ad9b0f16a6db30ec38ad7922e6 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
Since Automa doesn't just extend an existing function but adds a new function
based on Transcodi...
Allow preconditions to be set to `:enter` only, and have directly conflicting
preconditions reso...
cc9fb668f79ee13f14d53a2892790a5c26f45ed2 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
The user probably wants to use the input error code in most use cases, except
when running a mac...
Before this PR, a user could forget or mis-spell a symbol in the action Dict
passed to generate_...
The `re2nfa` function will create NFAs which include useless eps nodes.
Here, I define a useless...
NFAs with ambiguities often contain multiple ambiguities. Displaying the
simplest ambiguity when...
If two edges in equivalent paths have distinct preconditions, these could be
used to distinguish...
e8e43eea62dd2890f5f370aa39d9260109f728da authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
Currently, the functions `re2nfa` and `nfa2dfa` can produce dead (unreachable)
nodes, which is p...
Honestly, four generators and a tokenizer was excessive.
Inline generator was probably not reall...
88ec2946b3096785df5e8fc986221edd60ced67a authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
Many potential users of Automa are not interested in parsing from IOs, but only
buffers. For tho...
An oversight in the ambiguity check meant that actions placed on non-epsilon
edges were accident...
c1b2641e03a7c494d06753564f7c1e045da88690 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
6f1f6f9c29cc901758a21e831222cd26e00fcf39 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
One of the issues with using Automa is that its lack of exports makes it unclear
what is interna...
78f95a2793baa2b48edda7d354d4ab6e2bfb7f0b authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
9098fafa76d760dfe2c0a664c257a2ff7e2d341f authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
e66a282646495166c9931945773abc5f2145dc4a authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
d759de2d91141476b89328c010e9c6cb50858027 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
36fcaa50d340a531c347a4a587d300cc6f22b00e authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
7d2cf2d4896ee2d9db424484d3acbeae0ab29be4 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
cb5054eaeb4479a2df8914b7e94b070d24318c2b authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
e631e50566bc051d382afef46c7a3ef9cba27eb2 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
8a088ed03c4d9af302633cc82935e41cfe6769d7 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
43f5f86f1d46f38d1925ca2914ca95540fb046b6 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
1e427d88ab9d4617227d22d535d633b9c072f9f8 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
465272f0dfa0dc7c6f4ab5b9a29d652cbc175753 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
p_eof only have two valid values: -1 and p_end. By instead using is_eof::Bool
to distinguish the...
ff7a726270f6af6e2c3dc5e8cabd49572ad190a8 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
a369784789fbc81d7987efa5db84c8b8357412e5 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
Currently, Automa allows you to add a :final action to a regex like "a*", where
it is not possib...
Instead of doing `re.actions[:exit] = [:foo]`, do `onexit(re, :foo)`. It's
cleaner, and avoids m...
nfa2dfa now errors if any RE object has a .actions field with an unsupported
key. This prevents ...
The tokenizer has a completely new design and API.
* It's now much easier to use
* It's now lazy...
0fc38481b9785d25d13b24d3dfa5b18561582d5d authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
With the :goto generator, checking bounds is not permitted anyway.
And the table generator is so...
da2d7fe139de85a600f3c839fdb6336bf9256672 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
There is no reason to use `import` over `using`. On the contrary, it muddles
the difference betw...
4a1ee2deb76717f1f3d3dbbc7bce208bd411405f authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
b4d26f4ce2691bf6d2c667eb35581616488971cf authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
Users should not have access to the module directly. Instead, export the RE
struct, and also all...
The gensym'd symbols in Automa's constant expressions are computed on
precompilation of Automa.
...
14109b6bf6b5dad7ae25f23fe0460f4f43163ce1 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
ddcf22f58d16492b84fdd996934eb9f65f2199f6 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
3b5c91363e55830f80336e03fcb51da45c45d958 authored over 1 year ago by Jakob Nybo Nissen <[email protected]>
This dependency was used for something completely trivial.
7c6a696082ed71667519ae156a50373684dbc898 authored almost 2 years ago by Jakob Nybo Nissen <[email protected]>8dd2672fd838430f673294b2c0c9c011ab9f469e authored over 2 years ago by Jakob Nybo Nissen <[email protected]>
It is possible for users to construct a regex that matches the null set, i.e.
no strings, not ev...
These two data types were originally added to prevent nondeterminism when
compiling regex.
Inste...
The code in generate_reader did not respect the Vars or CodeGenContext.
69d16f5cad2edadef5b9715a32afcebaa480ad09 authored over 2 years ago by Jakob Nybo Nissen <[email protected]>
A current limitation of Automa is that it can be difficult to understand why
a certain string do...
Now prints the minimal possible input to trigger the ambiguity.
d4bd3eca1ad8d9181f09a1d8831ba133926c7228 authored over 2 years ago by Jakob Nybo Nissen <[email protected]>241c16ea9303c876886f57463cec59b8ce26fc47 authored over 2 years ago by Jakob Nybo Nissen <[email protected]>
8537d8aa1b0e3304f4f5fca18ae880659cf03d62 authored over 2 years ago by Jakob Nybo Nissen <[email protected]>
I want to release one more non-breaking release before v1, which requires us
to remove the break...
Most generators have < 128 states, basically all have < 32,000. This suggests
we should be able...
Automa's dependency ScanByte implements a ByteSet. Use it instead.
3f4e69070f37eb5e5a1af9c71d9e53770e6dd64f authored over 2 years ago by Jakob Nybo Nissen <[email protected]>
* Disallow unicode in parse_class
* Allow byte ranges in class
6e75725e9923a69717b64f82bf79fee618e74355 authored over 2 years ago by Ciarán O'Mara <[email protected]>
* Fix typo geybyte to getbyte
* Use optimized final state check for Tokenizer
* Make Tokenizer...
* Remove unused argument generate_table_code
* Do not needlessly specialize on args in Tokenize...
# Closes #88
6abbdb4c82f39187c8883551063a3bbec75db145 authored over 2 years ago by Jakob Nybo Nissen <[email protected]>
In the code generated by generate_table_code for Tokenizer, if the loop exits
due to reaching EO...
Optimize away dict lookup when possible
46d6d336b576fd2dbc25b84e587d797478436631 authored over 3 years ago by Jakob Nybo Nissen <[email protected]>3964b0d1d25ecf31e0fd1bf2be8ab78e297dd03c authored over 3 years ago by Jakob Nybo Nissen <[email protected]>
Fix execute (issue 78)
9f06021b77bfe3c9f4b7ada88ea754afa26f2e91 authored over 3 years ago by Jakob Nybo Nissen <[email protected]>f8bae2beac226113b2813ad7aeeaa72ddd64d303 authored over 3 years ago by Jakob Nybo Nissen <[email protected]>
8eb8a89148a7fef057c9051ca42817a0bf616b48 authored almost 4 years ago by Kevin Bonham <[email protected]>