Lines Matching defs:function
59 // Requirement lists how we know if a function exists. Extension is the
62 // that has the function.
73 // adds a given function ptr to the struct.
121 // correct function pointer to the interface. GET_PROC and
150 for _, function := range feature.Functions {
151 block = assembleFunction(block, ifExpr, function, req)
156 for _, function := range feature.TestOnlyFunctions {
157 block = assembleFunction(block, ifExpr, function, req)
162 // a hard code function does not use the C++ macro
196 // assembleFunction is a little helper that will add a function to the interface
197 // using an appropriate macro (e.g. if the function is added)
199 func assembleFunction(block, ifExpr, function string, req Requirement) string {
215 block = addLine(block, fmt.Sprintf("GET_PROC(%s);", function))
217 block = addLine(block, fmt.Sprintf("GET_PROC_SUFFIX(%s, %s);", function, suffix))
223 // Notably, there is no if expression if the function is a "core" function
251 // driveSuffix returns the suffix of the function associated with the given
260 // addLine is a little helper function which handles the newline and tab
353 for _, function := range feature.Functions {
354 if in(function, feature.OptionalFunctions) {
357 checks = append(checks, "!fFunctions.f"+function)
360 for _, function := range feature.TestOnlyFunctions {
361 if in(function, feature.OptionalFunctions) {
364 testOnly = append(testOnly, "!fFunctions.f"+function)
403 abort("ERROR: Duplicate function %s", fn)
409 abort("ERROR: Duplicate function %s\n", fn)