__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
"""
pygments.lexers.cddl
~~~~~~~~~~~~~~~~~~~~
Lexer for the Concise data definition language (CDDL), a notational
convention to express CBOR and JSON data structures.
More information:
https://datatracker.ietf.org/doc/rfc8610/
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
"""
from pygments.lexer import RegexLexer, bygroups, include, words
from pygments.token import Comment, Error, Keyword, Name, Number, Operator, \
Punctuation, String, Whitespace
__all__ = ['CddlLexer']
class CddlLexer(RegexLexer):
"""
Lexer for CDDL definitions.
.. versionadded:: 2.8
"""
name = "CDDL"
url = 'https://datatracker.ietf.org/doc/rfc8610/'
aliases = ["cddl"]
filenames = ["*.cddl"]
mimetypes = ["text/x-cddl"]
_prelude_types = [
"any",
"b64legacy",
"b64url",
"bigfloat",
"bigint",
"bignint",
"biguint",
"bool",
"bstr",
"bytes",
"cbor-any",
"decfrac",
"eb16",
"eb64legacy",
"eb64url",
"encoded-cbor",
"false",
"float",
"float16",
"float16-32",
"float32",
"float32-64",
"float64",
"int",
"integer",
"mime-message",
"nil",
"nint",
"null",
"number",
"regexp",
"tdate",
"text",
"time",
"true",
"tstr",
"uint",
"undefined",
"unsigned",
"uri",
]
_controls = [
".and",
".bits",
".cbor",
".cborseq",
".default",
".eq",
".ge",
".gt",
".le",
".lt",
".ne",
".regexp",
".size",
".within",
]
_re_id = (
r"[$@A-Z_a-z]"
r"(?:[\-\.]+(?=[$@0-9A-Z_a-z])|[$@0-9A-Z_a-z])*"
)
# While the spec reads more like "an int must not start with 0" we use a
# lookahead here that says "after a 0 there must be no digit". This makes the
# '0' the invalid character in '01', which looks nicer when highlighted.
_re_uint = r"(?:0b[01]+|0x[0-9a-fA-F]+|[1-9]\d*|0(?!\d))"
_re_int = r"-?" + _re_uint
tokens = {
"commentsandwhitespace": [(r"\s+", Whitespace), (r";.+$", Comment.Single)],
"root": [
include("commentsandwhitespace"),
# tag types
(r"#(\d\.{uint})?".format(uint=_re_uint), Keyword.Type), # type or any
# occurrence
(
r"({uint})?(\*)({uint})?".format(uint=_re_uint),
bygroups(Number, Operator, Number),
),
(r"\?|\+", Operator), # occurrence
(r"\^", Operator), # cuts
(r"(\.\.\.|\.\.)", Operator), # rangeop
(words(_controls, suffix=r"\b"), Operator.Word), # ctlops
# into choice op
(r"&(?=\s*({groupname}|\())".format(groupname=_re_id), Operator),
(r"~(?=\s*{})".format(_re_id), Operator), # unwrap op
(r"//|/(?!/)", Operator), # double und single slash
(r"=>|/==|/=|=", Operator),
(r"[\[\]{}\(\),<>:]", Punctuation),
# Bytestrings
(r"(b64)(')", bygroups(String.Affix, String.Single), "bstrb64url"),
(r"(h)(')", bygroups(String.Affix, String.Single), "bstrh"),
(r"'", String.Single, "bstr"),
# Barewords as member keys (must be matched before values, types, typenames,
# groupnames).
# Token type is String as barewords are always interpreted as such.
(r"({bareword})(\s*)(:)".format(bareword=_re_id),
bygroups(String, Whitespace, Punctuation)),
# predefined types
(words(_prelude_types, prefix=r"(?![\-_$@])\b", suffix=r"\b(?![\-_$@])"),
Name.Builtin),
# user-defined groupnames, typenames
(_re_id, Name.Class),
# values
(r"0b[01]+", Number.Bin),
(r"0o[0-7]+", Number.Oct),
(r"0x[0-9a-fA-F]+(\.[0-9a-fA-F]+)?p[+-]?\d+", Number.Hex), # hexfloat
(r"0x[0-9a-fA-F]+", Number.Hex), # hex
# Float
(r"{int}(?=(\.\d|e[+-]?\d))(?:\.\d+)?(?:e[+-]?\d+)?".format(int=_re_int),
Number.Float),
# Int
(_re_int, Number.Integer),
(r'"(\\\\|\\"|[^"])*"', String.Double),
],
"bstrb64url": [
(r"'", String.Single, "#pop"),
include("commentsandwhitespace"),
(r"\\.", String.Escape),
(r"[0-9a-zA-Z\-_=]+", String.Single),
(r".", Error),
# (r";.+$", Token.Other),
],
"bstrh": [
(r"'", String.Single, "#pop"),
include("commentsandwhitespace"),
(r"\\.", String.Escape),
(r"[0-9a-fA-F]+", String.Single),
(r".", Error),
],
"bstr": [
(r"'", String.Single, "#pop"),
(r"\\.", String.Escape),
(r"[^'\\]+", String.Single),
],
}
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| __pycache__ | Folder | 0755 |
|
|
| __init__.py | File | 11.83 KB | 0644 |
|
| _ada_builtins.py | File | 1.51 KB | 0644 |
|
| _asy_builtins.py | File | 26.65 KB | 0644 |
|
| _cl_builtins.py | File | 13.67 KB | 0644 |
|
| _cocoa_builtins.py | File | 102.72 KB | 0644 |
|
| _csound_builtins.py | File | 17.98 KB | 0644 |
|
| _css_builtins.py | File | 12.15 KB | 0644 |
|
| _julia_builtins.py | File | 11.6 KB | 0644 |
|
| _lasso_builtins.py | File | 131.36 KB | 0644 |
|
| _lilypond_builtins.py | File | 105.56 KB | 0644 |
|
| _lua_builtins.py | File | 7.93 KB | 0644 |
|
| _mapping.py | File | 66.43 KB | 0644 |
|
| _mql_builtins.py | File | 24.13 KB | 0644 |
|
| _mysql_builtins.py | File | 25.24 KB | 0644 |
|
| _openedge_builtins.py | File | 48.24 KB | 0644 |
|
| _php_builtins.py | File | 105.4 KB | 0644 |
|
| _postgres_builtins.py | File | 13.04 KB | 0644 |
|
| _qlik_builtins.py | File | 12.3 KB | 0644 |
|
| _scheme_builtins.py | File | 31.8 KB | 0644 |
|
| _scilab_builtins.py | File | 51.18 KB | 0644 |
|
| _sourcemod_builtins.py | File | 26.15 KB | 0644 |
|
| _stan_builtins.py | File | 13.13 KB | 0644 |
|
| _stata_builtins.py | File | 26.59 KB | 0644 |
|
| _tsql_builtins.py | File | 15.1 KB | 0644 |
|
| _usd_builtins.py | File | 1.62 KB | 0644 |
|
| _vbscript_builtins.py | File | 4.13 KB | 0644 |
|
| _vim_builtins.py | File | 55.73 KB | 0644 |
|
| actionscript.py | File | 11.4 KB | 0644 |
|
| ada.py | File | 5.2 KB | 0644 |
|
| agile.py | File | 876 B | 0644 |
|
| algebra.py | File | 9.64 KB | 0644 |
|
| ambient.py | File | 2.54 KB | 0644 |
|
| amdgpu.py | File | 1.63 KB | 0644 |
|
| ampl.py | File | 4.08 KB | 0644 |
|
| apdlexer.py | File | 30.04 KB | 0644 |
|
| apl.py | File | 3.33 KB | 0644 |
|
| archetype.py | File | 11.2 KB | 0644 |
|
| arrow.py | File | 3.48 KB | 0644 |
|
| arturo.py | File | 11.15 KB | 0644 |
|
| asc.py | File | 1.62 KB | 0644 |
|
| asm.py | File | 40.28 KB | 0644 |
|
| asn1.py | File | 4.16 KB | 0644 |
|
| automation.py | File | 19.35 KB | 0644 |
|
| bare.py | File | 2.95 KB | 0644 |
|
| basic.py | File | 27.27 KB | 0644 |
|
| bdd.py | File | 1.61 KB | 0644 |
|
| berry.py | File | 3.14 KB | 0644 |
|
| bibtex.py | File | 4.61 KB | 0644 |
|
| blueprint.py | File | 6.04 KB | 0644 |
|
| boa.py | File | 3.82 KB | 0644 |
|
| bqn.py | File | 3.26 KB | 0644 |
|
| business.py | File | 27.45 KB | 0644 |
|
| c_cpp.py | File | 17.53 KB | 0644 |
|
| c_like.py | File | 28.52 KB | 0644 |
|
| capnproto.py | File | 2.12 KB | 0644 |
|
| carbon.py | File | 3.15 KB | 0644 |
|
| cddl.py | File | 5.06 KB | 0644 |
|
| chapel.py | File | 5.04 KB | 0644 |
|
| clean.py | File | 6.25 KB | 0644 |
|
| comal.py | File | 3.08 KB | 0644 |
|
| compiled.py | File | 1.37 KB | 0644 |
|
| configs.py | File | 48.9 KB | 0644 |
|
| console.py | File | 4.05 KB | 0644 |
|
| cplint.py | File | 1.36 KB | 0644 |
|
| crystal.py | File | 15.39 KB | 0644 |
|
| csound.py | File | 16.6 KB | 0644 |
|
| css.py | File | 24.73 KB | 0644 |
|
| d.py | File | 9.64 KB | 0644 |
|
| dalvik.py | File | 4.5 KB | 0644 |
|
| data.py | File | 26.4 KB | 0644 |
|
| dax.py | File | 7.91 KB | 0644 |
|
| devicetree.py | File | 3.93 KB | 0644 |
|
| diff.py | File | 5.15 KB | 0644 |
|
| dns.py | File | 3.69 KB | 0644 |
|
| dotnet.py | File | 36.74 KB | 0644 |
|
| dsls.py | File | 35.92 KB | 0644 |
|
| dylan.py | File | 10.08 KB | 0644 |
|
| ecl.py | File | 6.22 KB | 0644 |
|
| eiffel.py | File | 2.63 KB | 0644 |
|
| elm.py | File | 3.08 KB | 0644 |
|
| elpi.py | File | 6.55 KB | 0644 |
|
| email.py | File | 4.63 KB | 0644 |
|
| erlang.py | File | 18.72 KB | 0644 |
|
| esoteric.py | File | 10.15 KB | 0644 |
|
| ezhil.py | File | 3.2 KB | 0644 |
|
| factor.py | File | 19.07 KB | 0644 |
|
| fantom.py | File | 9.96 KB | 0644 |
|
| felix.py | File | 9.42 KB | 0644 |
|
| fift.py | File | 1.58 KB | 0644 |
|
| floscript.py | File | 2.61 KB | 0644 |
|
| forth.py | File | 7.03 KB | 0644 |
|
| fortran.py | File | 10.1 KB | 0644 |
|
| foxpro.py | File | 25.6 KB | 0644 |
|
| freefem.py | File | 26.28 KB | 0644 |
|
| func.py | File | 3.54 KB | 0644 |
|
| functional.py | File | 674 B | 0644 |
|
| futhark.py | File | 3.64 KB | 0644 |
|
| gcodelexer.py | File | 826 B | 0644 |
|
| gdscript.py | File | 7.37 KB | 0644 |
|
| go.py | File | 3.7 KB | 0644 |
|
| grammar_notation.py | File | 7.79 KB | 0644 |
|
| graph.py | File | 4.01 KB | 0644 |
|
| graphics.py | File | 38.11 KB | 0644 |
|
| graphql.py | File | 5.47 KB | 0644 |
|
| graphviz.py | File | 1.89 KB | 0644 |
|
| gsql.py | File | 3.9 KB | 0755 |
|
| haskell.py | File | 32.13 KB | 0644 |
|
| haxe.py | File | 30.25 KB | 0644 |
|
| hdl.py | File | 21.99 KB | 0644 |
|
| hexdump.py | File | 3.52 KB | 0644 |
|
| html.py | File | 19.79 KB | 0644 |
|
| idl.py | File | 15.09 KB | 0644 |
|
| igor.py | File | 30.92 KB | 0644 |
|
| inferno.py | File | 3.06 KB | 0644 |
|
| installers.py | File | 12.87 KB | 0644 |
|
| int_fiction.py | File | 55.78 KB | 0644 |
|
| iolang.py | File | 1.86 KB | 0644 |
|
| j.py | File | 4.74 KB | 0644 |
|
| javascript.py | File | 61.39 KB | 0644 |
|
| jmespath.py | File | 2.01 KB | 0644 |
|
| jslt.py | File | 3.61 KB | 0644 |
|
| jsonnet.py | File | 5.5 KB | 0644 |
|
| jsx.py | File | 2.18 KB | 0644 |
|
| julia.py | File | 11.37 KB | 0644 |
|
| jvm.py | File | 71.22 KB | 0644 |
|
| kuin.py | File | 11.14 KB | 0644 |
|
| kusto.py | File | 3.4 KB | 0644 |
|
| ldap.py | File | 6.4 KB | 0644 |
|
| lean.py | File | 4.2 KB | 0644 |
|
| lilypond.py | File | 9.52 KB | 0644 |
|
| lisp.py | File | 141.01 KB | 0644 |
|
| macaulay2.py | File | 31.42 KB | 0644 |
|
| make.py | File | 7.51 KB | 0644 |
|
| markup.py | File | 58.84 KB | 0644 |
|
| math.py | File | 676 B | 0644 |
|
| matlab.py | File | 129.74 KB | 0644 |
|
| maxima.py | File | 2.65 KB | 0644 |
|
| meson.py | File | 4.24 KB | 0644 |
|
| mime.py | File | 7.36 KB | 0644 |
|
| minecraft.py | File | 13.49 KB | 0644 |
|
| mips.py | File | 4.5 KB | 0644 |
|
| ml.py | File | 34.49 KB | 0644 |
|
| modeling.py | File | 13.21 KB | 0644 |
|
| modula2.py | File | 51.83 KB | 0644 |
|
| monte.py | File | 6.14 KB | 0644 |
|
| mosel.py | File | 8.97 KB | 0644 |
|
| ncl.py | File | 62.46 KB | 0644 |
|
| nimrod.py | File | 6.27 KB | 0644 |
|
| nit.py | File | 2.66 KB | 0644 |
|
| nix.py | File | 4.29 KB | 0644 |
|
| oberon.py | File | 4.07 KB | 0644 |
|
| objective.py | File | 22.42 KB | 0644 |
|
| ooc.py | File | 2.91 KB | 0644 |
|
| openscad.py | File | 3.61 KB | 0644 |
|
| other.py | File | 1.7 KB | 0644 |
|
| parasail.py | File | 2.66 KB | 0644 |
|
| parsers.py | File | 25.3 KB | 0644 |
|
| pascal.py | File | 30.16 KB | 0644 |
|
| pawn.py | File | 7.96 KB | 0644 |
|
| perl.py | File | 38.25 KB | 0644 |
|
| phix.py | File | 22.71 KB | 0644 |
|
| php.py | File | 12.73 KB | 0644 |
|
| pointless.py | File | 1.93 KB | 0644 |
|
| pony.py | File | 3.17 KB | 0644 |
|
| praat.py | File | 12.38 KB | 0644 |
|
| procfile.py | File | 1.13 KB | 0644 |
|
| prolog.py | File | 12.21 KB | 0644 |
|
| promql.py | File | 4.6 KB | 0644 |
|
| prql.py | File | 8.54 KB | 0644 |
|
| ptx.py | File | 4.4 KB | 0644 |
|
| python.py | File | 52.15 KB | 0644 |
|
| q.py | File | 6.77 KB | 0644 |
|
| qlik.py | File | 3.58 KB | 0644 |
|
| qvt.py | File | 5.93 KB | 0644 |
|
| r.py | File | 6.04 KB | 0644 |
|
| rdf.py | File | 15.61 KB | 0644 |
|
| rebol.py | File | 17.82 KB | 0644 |
|
| resource.py | File | 2.83 KB | 0644 |
|
| ride.py | File | 4.94 KB | 0644 |
|
| rita.py | File | 1.1 KB | 0644 |
|
| rnc.py | File | 1.93 KB | 0644 |
|
| roboconf.py | File | 1.92 KB | 0644 |
|
| robotframework.py | File | 18.02 KB | 0644 |
|
| ruby.py | File | 22.14 KB | 0644 |
|
| rust.py | File | 8.02 KB | 0644 |
|
| sas.py | File | 9.18 KB | 0644 |
|
| savi.py | File | 4.54 KB | 0644 |
|
| scdoc.py | File | 2.47 KB | 0644 |
|
| scripting.py | File | 68.37 KB | 0644 |
|
| sgf.py | File | 1.94 KB | 0644 |
|
| shell.py | File | 35.61 KB | 0644 |
|
| sieve.py | File | 2.38 KB | 0644 |
|
| slash.py | File | 8.28 KB | 0644 |
|
| smalltalk.py | File | 7.04 KB | 0644 |
|
| smithy.py | File | 2.6 KB | 0644 |
|
| smv.py | File | 2.71 KB | 0644 |
|
| snobol.py | File | 2.67 KB | 0644 |
|
| solidity.py | File | 3.05 KB | 0644 |
|
| sophia.py | File | 3.25 KB | 0644 |
|
| special.py | File | 3.33 KB | 0644 |
|
| spice.py | File | 2.67 KB | 0644 |
|
| sql.py | File | 41.12 KB | 0644 |
|
| srcinfo.py | File | 1.65 KB | 0644 |
|
| stata.py | File | 6.27 KB | 0644 |
|
| supercollider.py | File | 3.61 KB | 0644 |
|
| tal.py | File | 2.83 KB | 0644 |
|
| tcl.py | File | 5.38 KB | 0644 |
|
| teal.py | File | 3.44 KB | 0644 |
|
| templates.py | File | 70.91 KB | 0644 |
|
| teraterm.py | File | 9.49 KB | 0644 |
|
| testing.py | File | 10.51 KB | 0644 |
|
| text.py | File | 1 KB | 0644 |
|
| textedit.py | File | 7.43 KB | 0644 |
|
| textfmts.py | File | 14.95 KB | 0644 |
|
| theorem.py | File | 16.27 KB | 0644 |
|
| thingsdb.py | File | 4.13 KB | 0644 |
|
| tlb.py | File | 1.34 KB | 0644 |
|
| tls.py | File | 1.5 KB | 0644 |
|
| tnt.py | File | 10.21 KB | 0644 |
|
| trafficscript.py | File | 1.44 KB | 0644 |
|
| typoscript.py | File | 8.01 KB | 0644 |
|
| ul4.py | File | 8.75 KB | 0644 |
|
| unicon.py | File | 18.08 KB | 0644 |
|
| urbi.py | File | 5.9 KB | 0644 |
|
| usd.py | File | 3.43 KB | 0644 |
|
| varnish.py | File | 7.1 KB | 0644 |
|
| verification.py | File | 3.79 KB | 0644 |
|
| verifpal.py | File | 2.6 KB | 0644 |
|
| vip.py | File | 5.58 KB | 0644 |
|
| vyper.py | File | 5.46 KB | 0644 |
|
| web.py | File | 894 B | 0644 |
|
| webassembly.py | File | 5.57 KB | 0644 |
|
| webidl.py | File | 10.27 KB | 0644 |
|
| webmisc.py | File | 39.6 KB | 0644 |
|
| wgsl.py | File | 11.64 KB | 0644 |
|
| whiley.py | File | 3.92 KB | 0644 |
|
| wowtoc.py | File | 3.93 KB | 0644 |
|
| wren.py | File | 3.16 KB | 0644 |
|
| x10.py | File | 1.88 KB | 0644 |
|
| xorg.py | File | 902 B | 0644 |
|
| yang.py | File | 4.39 KB | 0644 |
|
| yara.py | File | 2.37 KB | 0644 |
|
| zig.py | File | 3.86 KB | 0644 |
|