Code Monkey home page Code Monkey logo

egret's Introduction

EGRET

Evil generation of regular expression test strings

Licensing and copying information:

This software is distributed under the GNU General Public License version 3. See the file LICENSE included in this distribution for a copy of this license. If the file is not present, see http://www.gnu.org/licenses/

Dependencies:

EGRET requires Python 3.4 or later (due to using re.fullmatch). Python 2.x versions will not work.

Setup directions:

  1. Execute: cd src

  2. You may need to modify these Makefile variables:
    CXX := g++
    PYTHON := python3
    EXT_PATH := build/lib.linux-x86_64-3.4
    EXT_LIB := egret_ext.cpython-34m.so

The latter two variables refer to the location and name of a library that is created. The library contains C++ code but is used as a Python module. The precise name of the path and library may vary. To find out the name, simply make the project once and then analyze the build subdirectory that is created.

  1. Execute: make

  2. Execute: cd ..

  3. You should see the library (the egret_ext.cpython-34m.so or similar file) in this directory.

Running:

Simply run python3 egret.py. It will prompt for a regular expression and then generate test strings.

The script also some command line options. To see a list, execute: python3 egret.py -h

Acknowledgments:

A portion of EGRET was derived from a RE->NFA converter developed by Eli Bendersky.

Contact Information:

Eric Larson [email protected]

egret's People

Contributors

davisjam avatar elarsonsu avatar hartjet avatar nickomang avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.