class
Crowbar::Builder
- Crowbar::Builder
- Reference
- Object
Overview
Top-level DSL Builder for Crowbar
Defined in:
crowbar/dsl/builder.crConstructors
Instance Method Summary
-
#add_sample(sample : Buffer | Bytes | String)
Add secondary sample for inter-sample splicing
- #bmp(&)
-
#build : Engine
Build and return the configured Engine
- #engine : Engine
-
#evolution(&)
Configure Genetic Algorithm & Feedback
-
#fixup(&block : Buffer -> Nil)
Register post-mutation fixup callback
-
#frame(name : String | Symbol, &)
Define a declarative binary protocol frame
- #ftp(&)
-
#grammar(name : String | Symbol, max_depth : Int32 = 8, &)
Define a context-free generative grammar
-
#harvest(feedback : String) : Array(String)
Extracts diagnostic tokens from error text into the active dictionary
- #http(&)
- #markdown(&)
-
#match(pattern : Regex, group : Int32 = 0, name : String | Nil = nil, &)
Define a scoped regex match
- #mp3(&)
- #packet(&)
-
#pattern(name : Symbol)
Configure mutation pattern (:once, :many, :burst)
- #pdf(&)
- #png(&)
-
#preserve(format : Symbol)
Enable structure-preserving rules (:json, :yaml, :http, :dns, :csv, :xml, :url, :tlv, :base64, :varint, :ftp, :sql, :png, :bmp, :wav, :mp3, :wad, :pdf)
- #preserve(format : Symbol, &block : Rule -> Nil)
- #preserve_format(format : Symbol)
- #preserve_format(format : Symbol, &block : Rule -> Nil)
-
#scope(name : String | Symbol, bytes range : Range(B, E), &) forall B, E
Define a scoped byte range
-
#scope(name : String | Symbol, selector : Selector, &)
Define a scoped region with an explicit selector instance
-
#scope(name : String | Symbol, field index : Int32, delimiter : UInt8 | Char | String = ',', &)
Define a scoped delimited field/column
-
#scope(name : String | Symbol, chars kind : Selectors::CharacterClass::Kind | Symbol, &)
Define a scoped character class
-
#scope(name : String | Symbol, stride step : Int32, offset : Int32 = 0, length : Int32 = 1, &)
Define a scoped stride / periodic pattern
-
#scope(name : String | Symbol, entropy mode : Selectors::Entropy::Mode | Symbol, &)
Define a scoped entropy target
-
#seed(val : UInt64 | Int32 | Int64)
Set PRNG seed
-
#seek(offset : Int)
Fast-forwards PRNG state by offset
- #seven_zip(&)
- #sql(&)
- #tar(&)
-
#template(spec : String)
Configure output envelope / template
-
#unique(capacity : Int32 = 10000)
Configure deduplication uniqueness filter
- #wad(&)
- #wav(&)
- #zip(&)
Constructor Detail
Instance Method Detail
Define a context-free generative grammar
Extracts diagnostic tokens from error text into the active dictionary
Define a scoped regex match
Enable structure-preserving rules (:json, :yaml, :http, :dns, :csv, :xml, :url, :tlv, :base64, :varint, :ftp, :sql, :png, :bmp, :wav, :mp3, :wad, :pdf)
Define a scoped byte range
Define a scoped region with an explicit selector instance
Define a scoped delimited field/column
Define a scoped character class
Define a scoped stride / periodic pattern
Define a scoped entropy target