Benjamin Bannier
f5a76c1aed
Reformat Zeek in Spicy style
...
This largely copies over Spicy's `.clang-format` configuration file. The
one place where we deviate is header include order since Zeek depends on
headers being included in a certain order.
2023-10-30 09:40:55 +01:00
Vern Paxson
cbc3d9c739
ZAM fix for inlining bug when a local is assigned to a function parameter
2023-09-27 14:03:45 -07:00
Vern Paxson
434a7e059d
introduce internal "mask" expression node to avoid mixed-type overloading of "/"
2023-09-26 14:39:26 -07:00
Vern Paxson
1ff490b41c
more extensive ZAM inlining & compilation of lambdas
2023-07-17 16:31:30 -07:00
Vern Paxson
1d5bc841e0
ZAM optimization for ?$ operator applied to non-optional fields
2023-07-17 16:31:30 -07:00
Tim Wojtulewicz
90d0bc64fa
Replace empty destructor bodies with =default definitions
2023-07-07 09:17:05 -07:00
Vern Paxson
cb15e0d4f1
Address PR review feedback on zam-feature-complete
...
* insert_or_assign usage
* master -> primary
* FunctionIngredientsPtr
* FuncType::Capture deprecations
* no new ScriptFunc constructor
2023-06-30 09:59:10 +02:00
Vern Paxson
46983cfb2f
refinements to LambdaExpr's to provide flexibility, support for ZVal captures
2023-06-30 09:36:14 +02:00
Tim Wojtulewicz
4229af6820
Remove deprecations tagged for v6.1
2023-06-14 10:07:22 -07:00
Vern Paxson
0c434ca4f8
changed function_ingredients struct to FunctionIngredients class with accessors
2023-04-02 11:34:16 -07:00
Arne Welzel
5ef62b2de8
Expr: Remove vector scalar operations
...
These seem to have been deprecated since 2018, so do it now.
Unfortunately the message didn't contain a version when it'll
be removed, but it's been long enough.
2023-03-20 21:35:48 +01:00
Tim Wojtulewicz
2739275b88
Merge remote-tracking branch 'jsoref/spelling-src'
...
* jsoref/spelling-src:
Spelling src
2022-11-11 12:49:15 -07:00
Josh Soref
cd201aa24e
Spelling src
...
These are non-functional changes.
* accounting
* activation
* actual
* added
* addresult
* aggregable
* aligned
* alternatively
* ambiguous
* analysis
* analyzer
* anticlimactic
* apparently
* application
* appropriate
* arithmetic
* assignment
* assigns
* associated
* authentication
* authoritative
* barrier
* boundary
* broccoli
* buffering
* caching
* called
* canonicalized
* capturing
* certificates
* ciphersuite
* columns
* communication
* comparison
* comparisons
* compilation
* component
* concatenating
* concatenation
* connection
* convenience
* correctly
* corresponding
* could
* counting
* data
* declared
* decryption
* defining
* dependent
* deprecated
* detached
* dictionary
* directional
* directly
* directory
* discarding
* disconnecting
* distinguishes
* documentation
* elsewhere
* emitted
* empty
* endianness
* endpoint
* enumerator
* essentially
* evaluated
* everything
* exactly
* execute
* explicit
* expressions
* facilitates
* fiddling
* filesystem
* flag
* flagged
* for
* fragments
* guarantee
* guaranteed
* happen
* happening
* hemisphere
* identifier
* identifies
* identify
* implementation
* implemented
* implementing
* including
* inconsistency
* indeterminate
* indices
* individual
* information
* initial
* initialization
* initialize
* initialized
* initializes
* instantiate
* instantiated
* instantiates
* interface
* internal
* interpreted
* interpreter
* into
* it
* iterators
* length
* likely
* log
* longer
* mainly
* mark
* maximum
* message
* minimum
* module
* must
* name
* namespace
* necessary
* nonexistent
* not
* notifications
* notifier
* number
* objects
* occurred
* operations
* original
* otherwise
* output
* overridden
* override
* overriding
* overwriting
* ownership
* parameters
* particular
* payload
* persistent
* potential
* precision
* preexisting
* preservation
* preserved
* primarily
* probably
* procedure
* proceed
* process
* processed
* processes
* processing
* propagate
* propagated
* prototype
* provides
* publishing
* purposes
* queue
* reached
* reason
* reassem
* reassemble
* reassembler
* recommend
* record
* reduction
* reference
* regularly
* representation
* request
* reserved
* retrieve
* returning
* separate
* should
* shouldn't
* significant
* signing
* simplified
* simultaneously
* single
* somebody
* sources
* specific
* specification
* specified
* specifies
* specify
* statement
* subdirectories
* succeeded
* successful
* successfully
* supplied
* synchronization
* tag
* temporarily
* terminating
* that
* the
* transmitted
* true
* truncated
* try
* understand
* unescaped
* unforwarding
* unknown
* unknowndata
* unspecified
* update
* usually
* which
* wildcard
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-11-09 12:08:15 -05:00
Josh Soref
34966a93ef
spelling: canonicalize
...
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
2022-11-07 20:05:24 -05:00
AmazingPP
f2bfa61fc6
Add bitshift operators
2022-07-21 11:12:30 +08:00
Tim Wojtulewicz
4d4c6280e9
Miscellaneous deprecations and renaming
2022-07-12 12:01:23 -07:00
Vern Paxson
5a0a88526e
removed deprecated capture-by-reference closures
2022-06-17 15:55:43 -07:00
Vern Paxson
a0fc8ca5e4
broader support for AST traversal, including Attr and Attributes objects
2022-05-26 17:38:34 -07:00
Tim Wojtulewicz
73273fc87b
Merge remote-tracking branch 'origin/topic/vern/ZAM-inlining'
...
* origin/topic/vern/ZAM-inlining:
speed up ZAM compilation by capping function size when inlining
2022-05-19 11:45:50 -07:00
Vern Paxson
7d00ce0082
speed up ZAM compilation by capping function size when inlining
2022-05-14 14:52:31 -07:00
Vern Paxson
702172079a
tweaks per reviewing feedback
2022-05-13 16:16:21 -07:00
Vern Paxson
9ada7ac4e7
tracking of when statements/expressions occur in a "when" context
2022-05-12 13:45:45 -07:00
Vern Paxson
e786ba2fa9
type-checking for use of empty table constructors in expressions
2022-03-31 19:30:58 -07:00
Vern Paxson
4d051620e8
reworking of expressions to unify =/+=/-= with initialization
2022-03-23 15:36:35 -07:00
Vern Paxson
94e71b738a
minor enhancements for ZAM inlining
2022-02-03 08:53:10 -08:00
Robin Sommer
5b1691f162
Merge remote-tracking branch 'origin/topic/zeke/gh-1890'
...
* origin/topic/zeke/gh-1890:
Consistently warn about mixing vector and scalar operand depreciaton
2022-02-02 09:46:00 +01:00
Zeke
7ec2fa2ac9
Consistently warn about mixing vector and scalar operand depreciaton
...
Resolves #1890
2022-01-21 14:34:48 -08:00
Tim Wojtulewicz
3d9d6e953b
Merge remote-tracking branch 'origin/topic/vern/when-lambda'
...
* origin/topic/vern/when-lambda:
explicitly provide the frame for evaluating a "when" timeout expression
attempt to make "when" btest deterministic
tests for new "when" semantics/errors
update existing test suite usage of "when" statements to include captures
update uses of "when" in base scripts to include captures
captures for "when" statements update Triggers to IntrusivePtr's and simpler AST traversal introduce IDSet type, migrate associated "ID*" types to "const ID*"
logic (other than in profiling) for assignments that yield separate values
option for internal use to mark a function type as allowing non-expression returns
removed some now-obsolete profiling functionality
minor commenting clarifications
2022-01-14 14:41:42 -07:00
Vern Paxson
f895008c34
captures for "when" statements
...
update Triggers to IntrusivePtr's and simpler AST traversal
introduce IDSet type, migrate associated "ID*" types to "const ID*"
2022-01-07 14:50:35 -08:00
Vern Paxson
fa142438fe
logic (other than in profiling) for assignments that yield separate values
2022-01-07 14:18:42 -08:00
Tim Wojtulewicz
edf90a51e4
GH-1624: Migrate check_and_promote and a few Expr methods to IntrusivePtr
2022-01-07 12:33:54 -07:00
Tim Wojtulewicz
b2f171ec69
Reformat the world
2021-09-16 15:35:39 -07:00
Vern Paxson
074b18f3e8
tracking of optimization information associated with expressions
2021-09-08 10:23:38 -07:00
Tim Wojtulewicz
9b15db25f6
Reorder fields in some classes for more compact memory layout
2021-07-14 14:59:49 -07:00
Vern Paxson
d4eb0224a1
addressed a number of code review comments
2021-06-07 10:52:19 -07:00
Vern Paxson
c662f8fbe8
factor out "cast" functionality to make available to lower-level ZAM access
2021-05-30 18:11:08 -07:00
Vern Paxson
8044926e00
employ explicit conversions to/from "any" and "vector of any" types
2021-05-30 18:05:11 -07:00
Vern Paxson
292bd1b671
more robust treatment of arithmetic coercions
2021-05-30 18:02:30 -07:00
Vern Paxson
65be1b5d76
factoring out of low-level vector indexing to make available to ZAM
2021-05-30 17:51:54 -07:00
Vern Paxson
9a429808ab
directly construct records of known types, rather than requiring coercion
2021-05-30 17:47:28 -07:00
Vern Paxson
4ee8bd0082
Expr method to invert the sense of a relational
2021-05-30 17:31:22 -07:00
Vern Paxson
a16a25efbd
fixed / removed out-of-date comments, tidied check_and_promote_args() interface
2021-05-30 17:25:40 -07:00
Vern Paxson
efd03d41f8
convert scopes to be managed using IntrusivePtr's
2021-05-30 17:20:29 -07:00
Vern Paxson
f2f041b63b
various accessors used by ZAM compiler
2021-05-30 17:16:03 -07:00
Vern Paxson
8782894d7d
comments for factored-out index slice functions
2021-03-24 15:03:03 -07:00
Vern Paxson
91c2e05099
factor out record coercion; modernize management of coercion "map"
2021-03-24 15:03:00 -07:00
Vern Paxson
b792feccab
functions for indexing slices and strings
2021-03-24 15:01:19 -07:00
Vern Paxson
d53d2ac755
sundry accessors/cast-ers; RE_Matcher's track their construction values
2021-03-18 10:33:10 -07:00
Vern Paxson
56ab0ddcf1
fix for reducing operations on boolean vectors
2021-02-27 10:57:25 -08:00
Vern Paxson
45b9371e38
remove unneeded virtual method (same as inherited method)
2021-02-27 10:49:57 -08:00