OmniSciDB
a5dc49c757
|
Functions | |
def | line_is_incomplete |
def | find_signatures |
def | format_function_args |
def | build_template_function_call |
def | build_preflight_function |
def | must_emit_preflight_function |
def | format_annotations |
def | is_template_function |
def | uses_manager |
def | is_cpu_function |
def | is_gpu_function |
def | parse_annotations |
def | call_methods |
Variables | |
string | separator = '$=>$' |
list | input_files = [os.path.join(os.path.dirname(__file__), 'test_udtf_signatures.hpp')] |
tuple | cpu_output_header = os.path.splitext(output_filename) |
tuple | gpu_output_header = os.path.splitext(output_filename) |
list | add_stmts = [] |
list | cpu_template_functions = [] |
list | gpu_template_functions = [] |
list | cpu_address_expressions = [] |
list | gpu_address_expressions = [] |
list | cond_fns = [] |
list | canonical_input_files = [input_file[input_file.find("/QueryEngine/") + 1:] for input_file in input_files] |
list | header_file = ['#include "' + canonical_input_file + '"' for canonical_input_file in canonical_input_files] |
tuple | dirname = os.path.dirname(output_filename) |
tuple | add_tf_generated_files |
tuple | cpu_generated_files |
tuple | gpu_generated_files |
string | content |
Given a list of input files, scan for lines containing UDTF specification statements in the following form: UDTF: function_name(<arguments>) -> <output column types> (, <template type specifications>)? where <arguments> is a comma-separated list of argument types. The argument types specifications are: - scalar types: Int8, Int16, Int32, Int64, Float, Double, Bool, TextEncodingDict, etc - column types: ColumnInt8, ColumnInt16, ColumnInt32, ColumnInt64, ColumnFloat, ColumnDouble, ColumnBool, etc - column list types: ColumnListInt8, ColumnListInt16, ColumnListInt32, ColumnListInt64, ColumnListFloat, ColumnListDouble, ColumnListBool, etc - cursor type: Cursor<t0, t1, ...> where t0, t1 are column or column list types - output buffer size parameter type: RowMultiplier<i>, ConstantParameter<i>, Constant<i>, TableFunctionSpecifiedParameter<i> where i is a literal integer. The output column types is a comma-separated list of column types, see above. In addition, the following equivalents are suppored: Column<T> == ColumnT ColumnList<T> == ColumnListT Cursor<T, V, ...> == Cursor<ColumnT, ColumnV, ...> int8 == int8_t == Int8, etc float == Float, double == Double, bool == Bool T == ColumnT for output column types RowMultiplier == RowMultiplier<i> where i is the one-based position of the sizer argument when no sizer argument is provided, Constant<1> is assumed Argument types can be annotated using `|' (bar) symbol after an argument type specification. An annotation is specified by a label and a value separated by `=' (equal) symbol. Multiple annotations can be specified by using `|` (bar) symbol as the annotations separator. Supported annotation labels are: - name: to specify argument name - input_id: to specify the dict id mapping for output TextEncodingDict columns. - default: to specify a default value for an argument (scalar only) If argument type follows an identifier, it will be mapped to name annotations. For example, the following argument type specifications are equivalent: Int8 a Int8 | name=a Template type specifications is a comma separated list of template type assignments where values are lists of argument type names. For instance: T = [Int8, Int16, Int32, Float], V = [Float, Double]
def generate_TableFunctionsFactory_init.build_preflight_function | ( | fn_name, | |
sizer, | |||
input_types, | |||
output_types, | |||
uses_manager | |||
) |
Definition at line 205 of file generate_TableFunctionsFactory_init.py.
References format_function_args().
Referenced by parse_annotations().
def generate_TableFunctionsFactory_init.build_template_function_call | ( | caller, | |
called, | |||
input_types, | |||
output_types, | |||
uses_manager | |||
) |
Definition at line 191 of file generate_TableFunctionsFactory_init.py.
References format_function_args().
Referenced by parse_annotations().
def generate_TableFunctionsFactory_init.call_methods | ( | add_stmts | ) |
Definition at line 483 of file generate_TableFunctionsFactory_init.py.
def generate_TableFunctionsFactory_init.find_signatures | ( | input_file | ) |
Returns a list of parsed UDTF signatures.
Definition at line 84 of file generate_TableFunctionsFactory_init.py.
References join(), line_is_incomplete(), heavyai.open(), split(), and run_benchmark_import.type.
Referenced by parse_annotations().
def generate_TableFunctionsFactory_init.format_annotations | ( | annotations_ | ) |
Definition at line 265 of file generate_TableFunctionsFactory_init.py.
References join().
Referenced by parse_annotations().
def generate_TableFunctionsFactory_init.format_function_args | ( | input_types, | |
output_types, | |||
uses_manager, | |||
use_generic_arg_name, | |||
emit_output_args | |||
) |
Definition at line 163 of file generate_TableFunctionsFactory_init.py.
References join().
Referenced by build_preflight_function(), and build_template_function_call().
def generate_TableFunctionsFactory_init.is_cpu_function | ( | sig | ) |
Definition at line 287 of file generate_TableFunctionsFactory_init.py.
References uses_manager().
Referenced by parse_annotations().
def generate_TableFunctionsFactory_init.is_gpu_function | ( | sig | ) |
Definition at line 297 of file generate_TableFunctionsFactory_init.py.
References uses_manager().
Referenced by parse_annotations().
def generate_TableFunctionsFactory_init.is_template_function | ( | sig | ) |
Definition at line 278 of file generate_TableFunctionsFactory_init.py.
Referenced by parse_annotations().
def generate_TableFunctionsFactory_init.line_is_incomplete | ( | line | ) |
Definition at line 77 of file generate_TableFunctionsFactory_init.py.
Referenced by find_signatures().
def generate_TableFunctionsFactory_init.must_emit_preflight_function | ( | sig, | |
sizer | |||
) |
Definition at line 255 of file generate_TableFunctionsFactory_init.py.
Referenced by parse_annotations().
def generate_TableFunctionsFactory_init.parse_annotations | ( | input_files | ) |
Definition at line 306 of file generate_TableFunctionsFactory_init.py.
References build_preflight_function(), build_template_function_call(), find_signatures(), format_annotations(), is_cpu_function(), is_gpu_function(), is_template_function(), join(), and must_emit_preflight_function().
def generate_TableFunctionsFactory_init.uses_manager | ( | sig | ) |
Definition at line 283 of file generate_TableFunctionsFactory_init.py.
Referenced by table_functions::TableFunctionsFactory.add(), is_cpu_function(), is_gpu_function(), and com.mapd.parser.server.ExtensionFunctionSignatureParser.toSignature().
list generate_TableFunctionsFactory_init.add_stmts = [] |
Definition at line 434 of file generate_TableFunctionsFactory_init.py.
tuple generate_TableFunctionsFactory_init.add_tf_generated_files |
Definition at line 467 of file generate_TableFunctionsFactory_init.py.
list generate_TableFunctionsFactory_init.canonical_input_files = [input_file[input_file.find("/QueryEngine/") + 1:] for input_file in input_files] |
Definition at line 441 of file generate_TableFunctionsFactory_init.py.
list generate_TableFunctionsFactory_init.cond_fns = [] |
Definition at line 439 of file generate_TableFunctionsFactory_init.py.
tuple generate_TableFunctionsFactory_init.content |
Definition at line 488 of file generate_TableFunctionsFactory_init.py.
list generate_TableFunctionsFactory_init.cpu_address_expressions = [] |
Definition at line 437 of file generate_TableFunctionsFactory_init.py.
tuple generate_TableFunctionsFactory_init.cpu_generated_files |
Definition at line 473 of file generate_TableFunctionsFactory_init.py.
tuple generate_TableFunctionsFactory_init.cpu_output_header = os.path.splitext(output_filename) |
Definition at line 430 of file generate_TableFunctionsFactory_init.py.
list generate_TableFunctionsFactory_init.cpu_template_functions = [] |
Definition at line 435 of file generate_TableFunctionsFactory_init.py.
tuple generate_TableFunctionsFactory_init.dirname = os.path.dirname(output_filename) |
Definition at line 444 of file generate_TableFunctionsFactory_init.py.
list generate_TableFunctionsFactory_init.gpu_address_expressions = [] |
Definition at line 438 of file generate_TableFunctionsFactory_init.py.
tuple generate_TableFunctionsFactory_init.gpu_generated_files |
Definition at line 478 of file generate_TableFunctionsFactory_init.py.
tuple generate_TableFunctionsFactory_init.gpu_output_header = os.path.splitext(output_filename) |
Definition at line 431 of file generate_TableFunctionsFactory_init.py.
list generate_TableFunctionsFactory_init.gpu_template_functions = [] |
Definition at line 436 of file generate_TableFunctionsFactory_init.py.
list generate_TableFunctionsFactory_init.header_file = ['#include "' + canonical_input_file + '"' for canonical_input_file in canonical_input_files] |
Definition at line 442 of file generate_TableFunctionsFactory_init.py.
list generate_TableFunctionsFactory_init.input_files = [os.path.join(os.path.dirname(__file__), 'test_udtf_signatures.hpp')] |
Definition at line 421 of file generate_TableFunctionsFactory_init.py.
string generate_TableFunctionsFactory_init.separator = '$=>$' |
Definition at line 75 of file generate_TableFunctionsFactory_init.py.
Referenced by foreign_storage::anonymous_namespace{AbstractFileStorageDataWrapper.cpp}.append_file_path(), ai.heavy.jdbc.HeavyAIEscapeFunctions.appendCall(), foreign_storage::AbstractFileStorageDataWrapper.getFullFilePath(), import_export.import_thread_shapefile(), and pop_n_rows_from_merged_heaps_gpu().