Skip to main content

Asynchronous Low-code compiler for python

github

How to install

pip install xfox

Optional

pip install termcolor

Example

import asyncio
import xfox
#Custom Function

@xfox.addfunc(xfox.funcs)
async def test_func(item:str, *args, **kwargs):
    print("-----",kwargs)

@xfox.addfunc(xfox.funcs)
async def somef(item:str,*args, **kwargs):
    return kwargs["ctx"]

@xfox.addfunc(xfox.funcs)
async def function4(*args, **kwargs):
    return "FOX"

@xfox.addfunc(xfox.funcs)
async def function1(item:int, type:bool,*args, **kwargs):
    return type, args

@xfox.addfunc(xfox.funcs)
async def function2(item:str, *args, **kwargs):
    await xfox.isempty(item)
    return eval(item)

@xfox.addfunc(xfox.funcs)
async def inside(item:str, type:bool=False,*args, **kwargs):
    return type

@xfox.addfunc(xfox.funcs, 'usefunc')
async def functest(func:xfox.AnonFunction,*args, **kwargs):
    return (await func.compile(), func.name)



# Sync Parsing

print(asyncio.run(xfox.parse("""
/* TRASH (xd) */
$test_func[$test_func[sfsaf]]
$function1[1;$inside[true];$sadsadsdsd[]] $onlyif[1<2;ONLYIF]
$function2[1+2;dsadasd] sometext
$function4[]
$function1[1;$inside[fsfdfd;true];$sadsadsdsd[]]
$sdasdasd[sadsadsad]
sdasdsa $exec[true;print(1+231321, end='')] $exec[true;print(1+231321, end='')] $exec[true;print(1+231321, end='')]

/* Let/Get */
$let[test;good]
$get[test]

/* Internal Functions Test */
$usefunc[$def[$print[hello!]]]
$Test[]
$def[$print[hello!];Test]
$Test[] 
                             
/* While Test */
$let[a;0]
$while[$eval[$get[a]<=5];$let[a;$eval[$get[a]+1]]]
$get[a]
123 $while[True;$if[$get[a]<15;$let[a;$eval[$get[a]+1]];$break[]] $get[a]]
123 $while[True;$break[]]
$break[]

/* DoWhile Test */
$dowhile[1>2;Test]
                             
/* For Test */
$for[1..5;$get[i]]
$for[0..100..10;$get[i]]
$for[5;$if[$get[i]==2;$break[];$get[i]]]

/* Try Test */
$try[ERROR $get[_];$function1[]] 
$try[$print[$get[_]];$function2[]]
$try[$get[_];$raise[name;text]]

/* Import usage
$import[ttest]
$functiomm[] <- (custom function from ttest) */

/* Exit - $exit[] */
                                                                              
/* a Comment */ <-- comment here
""", ctx="asdsdsdasds",del_empty_lines=True)))

Output:

----- {'ctx': 'asdsdsdasds'}
----- {'ctx': 'asdsdsdasds'}
[LOG] hello!
[LOG] hello!
[LOG] Mising var item in function2
None
(False, ('$sadsadsdsd[]',))
3 sometext
FOX
(True, ('$sadsadsdsd[]',))
$sdasdasd[sadsadsad]
sdasdsa 231322 231322 231322
good
('', 'a547f0')
$Test[]
6
123 789101112131415
123
Test
12345
0102030405060708090100
01
ERROR Mising var type in function1
[ERROR] name: text
 <-- comment here

Interactive Xfox Interpreter

python -m xfox

Start xfox files

python -m xfox (filename).xfox

Examples

Soon...

Download files

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

Source Distribution

xfox-0.1.9.6.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

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

xfox-0.1.9.6-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file xfox-0.1.9.6.tar.gz.

File metadata

  • Download URL: xfox-0.1.9.6.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.13.2 Linux/6.13.7-200.nobara.fc41.x86_64

File hashes

Hashes for xfox-0.1.9.6.tar.gz
Algorithm Hash digest
SHA256 60bad6e2e5d093da2b8810fbb9ebfb1afde107fa78410875e7b17dde5c5b1556
MD5 4c38495921d7b3fb4ddd84bce60acbb3
BLAKE2b-256 36740eef505e995ca31984934bde33627bc50d678f4dc16f80f52d97229e14fc

See more details on using hashes here.

File details

Details for the file xfox-0.1.9.6-py3-none-any.whl.

File metadata

  • Download URL: xfox-0.1.9.6-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.13.2 Linux/6.13.7-200.nobara.fc41.x86_64

File hashes

Hashes for xfox-0.1.9.6-py3-none-any.whl
Algorithm Hash digest
SHA256 389a2de1672cd4b9f8934b1dc7ac87b4c7e5cb37d171e15095f901cfd7f4e7bf
MD5 e21b2d9c9589da9558f62f883725ec5c
BLAKE2b-256 97a99dbce7bf03c656faddaa41a14b9be22c224c4091eeb7286312fce19cb580

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.9.6 This release

2 files

0.1.9.5

2 files

0.1.9.3

2 files

0.1.9.2

2 files

0.1.9.1

2 files

0.1.9

2 files

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.2

2 files

0.1.1

2 files

Supported by

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