Skip to main content

A lexer creation tool

Project description

Soliz - A lexer creation tool

Features

  • Provides basic implementations for: strings, integers, floats, operators, symbols
  • Soliz's abstract design allows quick and easily understandable development
  • Pretty error printing

Errors look like:

Error: Unexpected character
{"key": 4.4.}
           ^
Expected: 'digit', found '.'
Occurs at: 1:12-12

WARNING: Order of the rules may matter depending on the implementation.

Builtins

Builtin rules can be located in soliz/impls.py

StringRule

This rule allows escape sequences and parses quoted strings.
Errors on invalid escape sequences.

NumberRule

This rule parses integers and floats, positive or negative.

OperatorRule

Parses the following operators: +, -, *, /, ==, ^, **, %

SymbolRule

Parses the following symbols: (, ), =, . as individual token types without value.

IdentifierRule

Parses identifiers that start with _ or alphabetic characters, and continue with alphanumeric or _ characters.

EolRule

Parses newline characters and updates the lexer context.

SpaceRule

Parses sequences of space and optionally tab characters.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

soliz-0.1.5.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

soliz-0.1.5-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file soliz-0.1.5.tar.gz.

File metadata

  • Download URL: soliz-0.1.5.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for soliz-0.1.5.tar.gz
Algorithm Hash digest
SHA256 77ce128484ad1d1e73e15c70aea6362543d6a7525f3a0cbb112ed87267269ebf
MD5 d1be1979907590a768d23e5d4c15049a
BLAKE2b-256 bc6c26281011549b198bd3756f52d563d69359a428e76849ed978f079f9ac2d6

See more details on using hashes here.

File details

Details for the file soliz-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: soliz-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for soliz-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 724081ac9c31951d3b31bceab4a22670a236c8b66f65b8a7395f5708b3382f70
MD5 d5ba3325b7aadcbad2bcec8935053760
BLAKE2b-256 ca719248023206149e66b1127baeb25d24d1dad89f71e0b3dc42f564be492901

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page