Enzo
Loading...
Searching...
No Matches
VectorOperators.h
1#pragma once
2
3namespace enzo::expr {
4
6inline constexpr const char* vectorOperatorsModule = "enzo_vector";
7
14inline constexpr const char* vectorOperatorsSource = R"das(
15options gen2
16
17module enzo_vector shared
18
19def public operator + (a : float3; b : float) : float3 { return a + float3(b) }
20def public operator + (a : float; b : float3) : float3 { return float3(a) + b }
21def public operator - (a : float3; b : float) : float3 { return a - float3(b) }
22def public operator - (a : float; b : float3) : float3 { return float3(a) - b }
23
24def public operator += (var a : float3&; b : float) { a += float3(b) }
25def public operator -= (var a : float3&; b : float) { a -= float3(b) }
26
27def public operator + (a : float3; b : int) : float3 { return a + float(b) }
28def public operator + (a : int; b : float3) : float3 { return float(a) + b }
29def public operator - (a : float3; b : int) : float3 { return a - float(b) }
30def public operator - (a : int; b : float3) : float3 { return float(a) - b }
31def public operator * (a : float3; b : int) : float3 { return a * float(b) }
32def public operator * (a : int; b : float3) : float3 { return float(a) * b }
33def public operator / (a : float3; b : int) : float3 { return a / float(b) }
34def public operator / (a : int; b : float3) : float3 { return float(a) / b }
35
36def public operator += (var a : float3&; b : int) { a += float(b) }
37def public operator -= (var a : float3&; b : int) { a -= float(b) }
38def public operator *= (var a : float3&; b : int) { a *= float(b) }
39def public operator /= (var a : float3&; b : int) { a /= float(b) }
40)das";
41
42} // namespace enzo::expr