Makeprojects
Loading...
Searching...
No Matches
makeprojects.enums Namespace Reference

Enumeration types for makeprojects. More...

Classes

class  FileTypes
 Enumeration of supported file types for project input. More...
class  IDETypes
 Enumeration of supported IDEs. More...
class  PlatformTypes
 Enumeration of supported target platforms. More...
class  ProjectTypes
 Enumeration of supported project types. More...

Functions

 source_file_filter (file_list, file_type_list)
 Prune the file list for a specific type.
 source_file_detect (file_list, file_type_list)
 Detect if a file of a specific type exists.
 get_installed_visual_studio ()
 Find installed Visual Studio version.
 get_installed_xcode ()
 Find installed Xcode version.
 platformtype_short_code (configurations)
 Iterate over a list of Configurations to determine the short code.
 get_output_template (project_type, platform)
 Determine the file prefix and suffix for the binary.
 add_burgerlib (configuration)
 Add burgerlib to a project.

Variables

dict _FILETYPES_LOOKUP
 Dictionary of default file extensions and mapped types.
dict _FILETYPES_READABLE
 List of human readable strings.
dict _PROJECTTYPES_READABLE
 List of human readable strings.
dict _IDETYPES_CODES
 List of IDE short codes.
dict _IDETYPES_READABLE
 List of human readable strings.
dict _PLATFORMTYPES_CODES
 List of platform short codes.
dict _PLATFORMTYPES_VS
 List of Visual Studio platform codes.
dict _PLATFORMTYPES_READABLE
 List of human readable strings.
dict _PLATFORMTYPES_EXPANDED
 List of platforms that expand to multiple targets.

Detailed Description

Enumeration types for makeprojects.

All enumerations are stored in this package

Function Documentation

◆ add_burgerlib()

makeprojects.enums.add_burgerlib ( configuration)

Add burgerlib to a project.

In a build_rules.py file, the function rules() can call this function to add burgerlib to the project.

Parameters
configurationConfiguration to modify
Returns
Zero

◆ get_installed_visual_studio()

makeprojects.enums.get_installed_visual_studio ( )

Find installed Visual Studio version.

Scan the host computer and return the IDETypes for the most recent version of Visual Studio that's installed.

Returns
IDETypes value or None

◆ get_installed_xcode()

makeprojects.enums.get_installed_xcode ( )

Find installed Xcode version.

Scan the host computer and return the IDETypes for the most recent version of XCode that's installed.

Returns
IDETypes value or None

◆ get_output_template()

makeprojects.enums.get_output_template ( project_type,
platform )

Determine the file prefix and suffix for the binary.

Using the project type and platform, determine if the final binary name template so that if the output was used with format(), it will create the binary filename appropriate for the platform.

Parameters
project_typeProjectTypes enum
platformPlatformTypes enum
Returns
String to be used with format() to create the final name.

◆ platformtype_short_code()

makeprojects.enums.platformtype_short_code ( configurations)

Iterate over a list of Configurations to determine the short code.

For files that create multiple platforms, determine if it matches a known expandable PlatformType

Parameters
configurationsList of configurations to scan
Returns
Either '' or the generic short code of the group or the first code in the configuration list.

◆ source_file_detect()

makeprojects.enums.source_file_detect ( file_list,
file_type_list )

Detect if a file of a specific type exists.

Note
file_type_list can either be a single enums.FileTypes enum or an iterable list of enums.FileTypes
Parameters
file_listlist of core.SourceFile entries.
file_type_listenums.FileTypes to match.
Returns
True if the FileTypes was found, False if not

◆ source_file_filter()

makeprojects.enums.source_file_filter ( file_list,
file_type_list )

Prune the file list for a specific type.

Note
file_type_list can either be a single enums.FileTypes enum or an iterable list of enums.FileTypes
Parameters
file_listlist of core.SourceFile entries.
file_type_listenums.FileTypes to match.
Returns
list of matching core.SourceFile entries.

Variable Documentation

◆ _FILETYPES_LOOKUP

dict makeprojects.enums._FILETYPES_LOOKUP
protected

Dictionary of default file extensions and mapped types.

When the directory is scanned for input files, the files will be tested against this list with a forced lowercase filename and determine the type of compiler to assign to an input file

This list can be appended or modified to allow other file types to be processed

See also
makeprojects.enums.FileTypes.lookup()

◆ _FILETYPES_READABLE

dict makeprojects.enums._FILETYPES_READABLE
protected

List of human readable strings.

Dictionary to map FileTypes enumerations into an human readable string

See also
makeprojects.enums.FileTypes.__repr__()

◆ _IDETYPES_CODES

dict makeprojects.enums._IDETYPES_CODES
protected

List of IDE short codes.

Dictionary to map IDETypes enumerations into a three letter code to append to a project filename

See also
makeprojects.enums.IDETypes.get_short_code()

◆ _IDETYPES_READABLE

dict makeprojects.enums._IDETYPES_READABLE
protected

List of human readable strings.

Dictionary to map IDETypes enumerations into an human readable string

See also
makeprojects.enums.IDETypes.__repr__()

◆ _PLATFORMTYPES_CODES

dict makeprojects.enums._PLATFORMTYPES_CODES
protected

List of platform short codes.

Dictionary to map PlatformTypes enumerations into a three or six letter code to append to a project filename

See also
makeprojects.enums.PlatformTypes.get_short_code

◆ _PLATFORMTYPES_EXPANDED

dict makeprojects.enums._PLATFORMTYPES_EXPANDED
protected

List of platforms that expand to multiple targets.

Dictionary to map generic PlatformTypes enumerations into lists.

See also
makeprojects.enums.PlatformTypes.get_expanded

◆ _PLATFORMTYPES_READABLE

dict makeprojects.enums._PLATFORMTYPES_READABLE
protected

List of human readable strings.

Dictionary to map PlatformTypes enumerations into an human readable string

See also
makeprojects.enums.PlatformTypes.__repr__

◆ _PLATFORMTYPES_VS

dict makeprojects.enums._PLATFORMTYPES_VS
protected

List of Visual Studio platform codes.

Visual Studio uses specific codes for tool chains used for video game consoles or CPUs

See also
makeprojects.enums.PlatformTypes.get_vs_platform

◆ _PROJECTTYPES_READABLE

dict makeprojects.enums._PROJECTTYPES_READABLE
protected

List of human readable strings.

Dictionary to map ProjectTypes enumerations into an human readable string

See also
makeprojects.enums.ProjectTypes.__repr__()