class language

Enumeration class: identifies the source language the compilation unit is in.

language Details

class cs.language

Enumeration class: identifies the source language the compilation unit is in.

static from_integer(_inner)

Construct an instance from an integer representation.

Parameters:_inner (int) – The integer representation, as returned by language.as_integer().
Return type:language
Raises:result.ERROR_INVALID_ARGUMENT if _inner is not a valid integer representation for a language instance.

Invariant: For language x, language.from_integer(x.as_integer()) == x

>>> lang = language.CPP.as_integer()
>>> lang
4
>>> language.from_integer(lang)
<cs.language C++>
__cmp__(other)

Comparison function for language , with respect to a stable overall ordering.

Parameters:other (language) – The language object to compare against.
Return type:int
Returns:An integer N such that:
  • N==0 if the two objects compare equal
  • N<0 if self < other
  • N>0 if self > other
>>> language.CPP.__cmp__(language.PPC)
-1
__eq__(b)

Equality operator for language .

Parameters:b (language) – The language object to compare against.
Return type:bool
Returns:True if self and b compare equal, False otherwise.
>>> language.X86 == language.C
False
__ge__(b)

Greater-than-or-equal operator for language .

Parameters:b (language) – The language object to compare against.
Return type:bool
Returns:True if self >= b , False otherwise.
>>> language.CSHARP >= language.SYNTHETIC
True
__gt__(b)

Greater-than operator for language .

Parameters:b (language) – The language object to compare against.
Return type:bool
Returns:True if self > b , False otherwise.
>>> language.X64 > language.JAVA
False
__hash__()

Hash function for language .

Return type:int
>>> hash(language.ARM)
10
__le__(b)

Less-than-or-equal operator for language .

Parameters:b (language) – The language object to compare against.
Return type:bool
Returns:True if self <= b , False otherwise.
>>> language.SYNTHETIC <= language.X86
True
__lt__(b)

Less-than operator for language .

Parameters:b (language) – The language object to compare against.
Return type:bool
Returns:True if self < b , False otherwise.
>>> language.WILDCARD < language.CPP
True
__ne__(b)

Inequality operator for language .

Parameters:b (language) – The language object to compare against.
Return type:bool
Returns:False if self and b compare equal, True otherwise.
>>> language.ARM != language.X64
True
__repr__()

Get a representation of a language object that includes information useful for debugging.

Return type:str
Returns:The string representation.
>>> repr(language.CSHARP)
'<cs.language csharp>'
__str__()

Get a simple string representation of a language object.

Return type:str
Returns:The string representation.
>>> str(language.C)
'C'
as_integer()

Get an integer representation of self.

Return type:int
Returns:An integer suitable for use with language.from_integer().

Invariant: For language x, language.from_integer(x.as_integer()) == x

>>> lang = language.CPP.as_integer()
>>> lang
4
>>> language.from_integer(lang)
<cs.language C++>
is_machine_code()

Check: is a language a machine code language (as opposed to a source language or special language kind)?

Return type:bool
Returns:True if called on a machine-code language, False otherwise (including language.WILDCARD, language.SYNTHETIC).
>>> language.JAVA.is_machine_code()
False
name()

Get the name of a language object.

Return type:str
Returns:The name.
>>> language.PPC.name()
'ppc'
DOTNETFE_CSHARP

C# language, .NET front end.

>>> language.DOTNETFE_CSHARP
<cs.language dotnetfe_csharp>
EDGCP_C

C language, EDGCP front end.

>>> language.EDGCP_C
<cs.language edgcp_c>
EDGCP_CPP

C++ language, EDGCP front end.

>>> language.EDGCP_CPP
<cs.language edgcp_cpp>
JFE_JAVA

Java language, Java front end.

>>> language.JFE_JAVA
<cs.language jfe_java>
META_ACTIONSCRIPT

ActionScript language, meta front end.

>>> language.META_ACTIONSCRIPT
<cs.language meta_actionscript>
META_ADA

Ada language, meta front end.

>>> language.META_ADA
<cs.language meta_ada>
META_ALGOL

Algol language, meta front end.

>>> language.META_ALGOL
<cs.language meta_algol>
META_AWK

Awk language, meta front end.

>>> language.META_AWK
<cs.language meta_awk>
META_C

C language, meta front end.

>>> language.META_C
<cs.language meta_c>
META_CFML

ColdFusion Markup Language, meta front end.

>>> language.META_CFML
<cs.language meta_cfml>
META_CLOJURE

Clojure language, meta fronte end.

>>> language.META_CLOJURE
<cs.language meta_clojure>
META_COBOL

COBOL language, meta front end.

>>> language.META_COBOL
<cs.language meta_cobol>
META_CPP

C++ language, meta front end.

>>> language.META_CPP
<cs.language meta_cpp>
META_CSHARP

C# language, meta front end.

>>> language.META_CSHARP
<cs.language meta_csharp>
META_D

D language, meta front end.

>>> language.META_D
<cs.language meta_d>
META_DART

Dart language, meta front end.

>>> language.META_DART
<cs.language meta_dart>
META_EIFFEL

Eiffel language, meta front end.

>>> language.META_EIFFEL
<cs.language meta_eiffel>
META_ERLANG

Erlang language, meta front end.

>>> language.META_ERLANG
<cs.language meta_erlang>
META_FORTH

Forth language, meta front end.

>>> language.META_FORTH
<cs.language meta_forth>
META_FORTRAN

Fortran language, meta front end.

>>> language.META_FORTRAN
<cs.language meta_fortran>
META_FSHARP

F# language, meta front end.

>>> language.META_FSHARP
<cs.language meta_fsharp>
META_GO

Go language, meta front end.

>>> language.META_GO
<cs.language meta_go>
META_HASKELL

Haskell language, meta front end.

>>> language.META_HASKELL
<cs.language meta_haskell>
META_JAVA

Java language, meta front end.

>>> language.META_JAVA
<cs.language meta_java>
META_JAVASCRIPT

JavaScript language, meta front end.

>>> language.META_JAVASCRIPT
<cs.language meta_javascript>
META_JULIA

Julia language, meta front end.

>>> language.META_JULIA
<cs.language meta_julia>
META_KOTLIN

Kotlin language, meta front end.

>>> language.META_KOTLIN
<cs.language meta_kotlin>
META_LISP

Lisp language, meta front end.

>>> language.META_LISP
<cs.language meta_lisp>
META_LUA

Lua language, meta front end.

>>> language.META_LUA
<cs.language meta_lua>
META_MATLAB

MATLAB language, meta front end.

>>> language.META_MATLAB
<cs.language meta_matlab>
META_ML

ML language, meta front end.

>>> language.META_ML
<cs.language meta_ml>
META_OBJECTIVE_C

Objective-C language, meta front end.

>>> language.META_OBJECTIVE_C
<cs.language meta_objective_c>
META_OBJECTPASCAL

Object Pascal language, meta front end.

>>> language.META_OBJECTPASCAL
<cs.language meta_objectpascal>
META_PASCAL

Pascal language, meta front end.

>>> language.META_PASCAL
<cs.language meta_pascal>
META_PERL

Perl language, meta front end.

>>> language.META_PERL
<cs.language meta_perl>
META_PHP

PHP language, meta front end.

>>> language.META_PHP
<cs.language meta_php>
META_PROLOG

Prolog language, meta front end.

>>> language.META_PROLOG
<cs.language meta_prolog>
META_PYTHON

Python language, meta front end.

>>> language.META_PYTHON
<cs.language meta_python>
META_R

R language, meta front end.

>>> language.META_R
<cs.language meta_r>
META_RUBY

Ruby language, meta front end.

>>> language.META_RUBY
<cs.language meta_ruby>
META_RUST

Rust language, meta front end.

>>> language.META_RUST
<cs.language meta_rust>
META_SAS

SAS language, meta front end.

>>> language.META_SAS
<cs.language meta_sas>
META_SCALA

Scala language, meta front end.

>>> language.META_SCALA
<cs.language meta_scala>
META_SCHEME

Scheme language, meta front end.

>>> language.META_SCHEME
<cs.language meta_scheme>
META_SMALLTALK

Smalltalk language, meta front end.

>>> language.META_SMALLTALK
<cs.language meta_smalltalk>
META_SQL

SQL language, meta front end.

>>> language.META_SQL
<cs.language meta_sql>
META_SWIFT

Swift language, meta front end.

>>> language.META_SWIFT
<cs.language meta_swift>
META_TEXT

Plain text language, meta front end.

>>> language.META_TEXT
<cs.language meta_text>
META_TYPESCRIPT

TypeScript language, meta front end.

>>> language.META_TYPESCRIPT
<cs.language meta_typescript>
META_VBSCRIPT

VBScript language, meta front end.

>>> language.META_VBSCRIPT
<cs.language meta_vbscript>
META_VERILOG

Verilog language, meta front end.

>>> language.META_VERILOG
<cs.language meta_verilog>
META_VHDL

VHSIC Hardware Description Language, meta front end.

>>> language.META_VHDL
<cs.language meta_vhdl>
META_VISUALBASIC

Visual Basic language, meta front end.

>>> language.META_VISUALBASIC
<cs.language meta_visualbasic>
META_VISUALFOXPRO

Visual FoxPro language, meta front end.

>>> language.META_VISUALFOXPRO
<cs.language meta_visualfoxpro>
SWYX_ARM

ARM machine code, SWYX front end.

>>> language.SWYX_ARM
<cs.language swyx_arm>
SWYX_ARM64

ARM64 machine code, SWYX front end.

>>> language.SWYX_ARM64
<cs.language swyx_arm64>
SWYX_MIPS

MIPS machine code, SWYX front end.

>>> language.SWYX_MIPS
<cs.language swyx_mips>
SWYX_PPC

PPC machine code, SWYX front end.

>>> language.SWYX_PPC
<cs.language swyx_ppc>
SWYX_X64

x64 machine code, SWYX front end.

>>> language.SWYX_X64
<cs.language swyx_x64>
SWYX_X86

x86 machine code, SWYX front end.

>>> language.SWYX_X86
<cs.language swyx_x86>
SYNTHETIC

The language associated with the synthesized compilation unit that contains #System_Initialization and all undefined functions ( procedure ).

>>> language.SYNTHETIC
<cs.language synthetic>
TOYLANGFE_TOYLANG

Toy language, ToyLang front end.

>>> language.TOYLANGFE_TOYLANG
<cs.language toylangfe_toylang>
WILDCARD

Matches all languages.

>>> language.WILDCARD
<cs.language wildcard>