Clause class
Ekspresi bentuk normal kanonis.
- Memperluas
Konstruktor
| Clause(Clause | Expression | Expression[]) | Menginisialisasi instans baru kelas |
Properti
| any |
Mendapatkan atau mengatur kamus anyBinding. |
| return |
Hasil yang diharapkan dari mengevaluasi ekspresi. |
| subsumed | Mendapatkan atau mengatur apakah klausul disubsum. |
| type | Jenis ekspresi. |
Properti yang Diwariskan
| children | Ekspresi anak-anak. |
| evaluator | Evaluator ekspresi. |
| functions | Kamus fungsi => ExpressionEvaluator. Ini semua fungsi yang tersedia, Anda dapat menambahkan fungsi kustom ke dalamnya, tetapi Anda tidak dapat mengganti fungsi bawaan. Jika Anda menghapus kamus, kamus tersebut akan diatur ulang ke fungsi bawaan. |
Metode
| matches(Clause, Memory |
Menentukan apakah |
| relationship(Clause, Predicate |
Membandingkan |
| split |
Memisahkan ekspresi anak yang diabaikan. |
| to |
Mendapatkan string yang mewakili klausa saat ini. |
Metode yang Diwarisi
| and |
Membuat dan memvalidasi ekspresi Dan. |
| deep |
Lakukan kesetaraan mendalam antar ekspresi. |
| equals |
Membuat dan memvalidasi ekspresi Sama dengan. |
| lamba |
Membuat ekspresi dari EvaluateExpressionDelegate |
| lambda((arg0: any) => any) | Buat ekspresi dari ekspresi lamba di atas status. Pengecualian akan ditangkap dan muncul sebagai string kesalahan. |
| lookup(string) | Cari fungsi |
| make |
Buat ekspresi dan validasi. |
| not |
Membuat dan memvalidasi ekspresi Bukan. |
| or |
Membuat dan memvalidasi ekspresi Or. |
| parse(string, Evaluator |
Uraikan string ekspresi ke dalam objek Ekspresi |
| references() | Mengembalikan jalur referensi statis ke memori. Mengembalikan semua jalur statis ke memori. Jika ada indeks elemen komputasi, maka jalur dihentikan di sana, tetapi Anda mungkin mendapatkan jalur lain dari bagian komputasi juga. |
| reference |
Fungsi berjalan untuk mengidentifikasi referensi memori statis dalam ekspresi. |
| set |
Buat dan validasi Atur ekspresi properti ke ekspresi nilai. |
| try |
Mengevaluasi ekspresi. |
| validate() | Memvalidasi ekspresi langsung. |
| validate |
Validasi pohon ekspresi secara rekursif. |
Detail Konstruktor
Clause(Clause | Expression | Expression[])
Menginisialisasi instans baru kelas Clause.
new Clause(clauseOrExpression?: Clause | Expression | Expression[])
Parameter
- clauseOrExpression
-
Clause | Expression | Expression[]
Klausa, ekspresi, atau array ekspresi untuk menginisialisasi Clause.
Detail Properti
anyBindings
Mendapatkan atau mengatur kamus anyBinding.
anyBindings: Map<string, string> = new Map<string, string>()
Nilai Properti
Map<string, string>
returnType
Hasil yang diharapkan dari mengevaluasi ekspresi.
ReturnType returnType
Nilai Properti
Hasil yang diharapkan dari mengevaluasi ekspresi.
subsumed
Mendapatkan atau mengatur apakah klausul disubsum.
subsumed: boolean = false
Nilai Properti
boolean
type
Jenis ekspresi.
string type
Nilai Properti
string
Jenis ekspresi.
Detail Properti yang Diwariskan
children
Ekspresi anak-anak.
children: Expression[]
Nilai Properti
evaluator
Evaluator ekspresi.
evaluator: ExpressionEvaluator
Nilai Properti
functions
Kamus fungsi => ExpressionEvaluator. Ini semua fungsi yang tersedia, Anda dapat menambahkan fungsi kustom ke dalamnya, tetapi Anda tidak dapat mengganti fungsi bawaan. Jika Anda menghapus kamus, kamus tersebut akan diatur ulang ke fungsi bawaan.
static functions: FunctionTable = new FunctionTable()
Nilai Properti
Detail Metode
matches(Clause, MemoryInterface | any)
Menentukan apakah Clause saat ini cocok dengan Clauselain .
function matches(clause: Clause, memory: MemoryInterface | any): boolean
Parameter
- clause
- Clause
Instans Clause lainnya untuk dibandingkan.
- memory
-
MemoryInterface | any
Cakupan untuk mencari variabel.
Mengembalikan
boolean
Nilai boolean yang menunjukkan apakah kedua klausul tersebut cocok.
relationship(Clause, PredicateComparers)
Membandingkan Clause saat ini dengan Clauselain .
function relationship(other: Clause, comparers: PredicateComparers): RelationshipType
Parameter
- other
- Clause
Clause lain untuk dibandingkan.
- comparers
- PredicateComparers
Pembanding, yang merupakan kamus PredicateComparer dengan kunci string.
Mengembalikan
Nilai RelationshipType antara dua instans Clause.
splitIgnores()
Memisahkan ekspresi anak yang diabaikan.
function splitIgnores()
toString(string[], number)
Mendapatkan string yang mewakili klausa saat ini.
function toString(builder: string[], indent: number): string
Parameter
- builder
-
string[]
Array string untuk membangun string klausul.
- indent
-
number
Bilangan bulat menunjukkan jumlah spasi di awal baris.
Mengembalikan
string
String yang mewakili klausa saat ini.
Detail Metode yang Diwarisi
andExpression(Expression[])
Membuat dan memvalidasi ekspresi Dan.
static function andExpression(children: Expression[]): Expression
Parameter
- children
Klausa anak.
Mengembalikan
Ekspresi baru.
deepEquals(Expression)
Lakukan kesetaraan mendalam antar ekspresi.
function deepEquals(other: Expression): boolean
Parameter
- other
- Expression
Ekspresi lainnya.
Mengembalikan
boolean
True jika ekspresi sama.
equalsExpression(Expression[])
Membuat dan memvalidasi ekspresi Sama dengan.
static function equalsExpression(children: Expression[]): Expression
Parameter
- children
Klausa anak.
Mengembalikan
Ekspresi baru.
Diwariskan DariExpression.equalsExpression
lambaExpression(EvaluateExpressionDelegate)
Membuat ekspresi dari EvaluateExpressionDelegate
static function lambaExpression(func: EvaluateExpressionDelegate): Expression
Parameter
Fungsi untuk membuat ekspresi dari.
Mengembalikan
Ekspresi baru.
lambda((arg0: any) => any)
Buat ekspresi dari ekspresi lamba di atas status. Pengecualian akan ditangkap dan muncul sebagai string kesalahan.
static function lambda(func: (arg0: any) => any): Expression
Parameter
- func
-
(arg0: any) => any
ekspresi ambda untuk dievaluasi.
Mengembalikan
Ekspresi baru.
lookup(string)
Cari fungsi
static function lookup(functionName: string): ExpressionEvaluator
Parameter
- functionName
-
string
Nama fungsi yang akan dicari.
Mengembalikan
ExpressionEvaluator yang sesuai dengan nama fungsi.
makeExpression(string, ExpressionEvaluator, Expression[])
Buat ekspresi dan validasi.
static function makeExpression(type: string, evaluator: ExpressionEvaluator, children: Expression[]): Expression
Parameter
- type
-
string
Jenis ekspresi dari ExpressionType.
- evaluator
- ExpressionEvaluator
Informasi tentang cara memvalidasi dan mengevaluasi ekspresi.
- children
Ekspresi anak.
Mengembalikan
Ekspresi baru.
notExpression(Expression)
Membuat dan memvalidasi ekspresi Bukan.
static function notExpression(child: Expression): Expression
Parameter
- child
- Expression
Klausa anak.
Mengembalikan
Ekspresi baru.
orExpression(Expression[])
Membuat dan memvalidasi ekspresi Or.
static function orExpression(children: Expression[]): Expression
Parameter
- children
Klausa anak.
Mengembalikan
Ekspresi baru.
parse(string, EvaluatorLookup)
Uraikan string ekspresi ke dalam objek Ekspresi
static function parse(expression: string, lookup?: EvaluatorLookup): Expression
Parameter
- expression
-
string
String ekspresi.
- lookup
- EvaluatorLookup
Fakultatif.
EvaluatorLookup pencarian fungsi saat mengurai ekspresi. Defaultnya adalah
Mengembalikan
Objek ekspresi.
references()
Mengembalikan jalur referensi statis ke memori. Mengembalikan semua jalur statis ke memori. Jika ada indeks elemen komputasi, maka jalur dihentikan di sana, tetapi Anda mungkin mendapatkan jalur lain dari bagian komputasi juga.
function references(): string[]
Mengembalikan
string[]
Daftar jalur referensi statis.
referenceWalk(Expression, (arg0: Expression) => boolean)
Fungsi berjalan untuk mengidentifikasi referensi memori statis dalam ekspresi.
function referenceWalk(expression: Expression, extension?: (arg0: Expression) => boolean): { path: string, refs: Set<string> }
Parameter
- expression
- Expression
Ekspresi untuk dianalisis.
- extension
-
(arg0: Expression) => boolean
Jika ada, dipanggil untuk mengambil alih pencarian untuk hal-hal seperti ekspansi templat.
Mengembalikan
{ path: string, refs: Set<string> }
Jalur ekspresi aksesor.
setPathToValue(Expression, any)
Buat dan validasi Atur ekspresi properti ke ekspresi nilai.
static function setPathToValue(property: Expression, value: any): Expression
Parameter
- property
- Expression
ekspresi properti.
- value
-
any
ekspresi nilai.
Mengembalikan
Ekspresi baru.
tryEvaluate(MemoryInterface | any, Options)
Mengevaluasi ekspresi.
function tryEvaluate(state: MemoryInterface | any, options: Options): ValueWithError
Parameter
- state
-
MemoryInterface | any
Status global untuk mengevaluasi ekspresi aksesor terhadap. Dapat berupa Kamus, jika tidak, refleksi digunakan untuk mengakses properti lalu pengindeks.
- options
- Options
Opsi yang digunakan dalam evaluasi.
Mengembalikan
Nilai komputasi dan string kesalahan. Jika string non-null, maka ada kesalahan evaluasi.
Diwarisi Dari ekspresi.tryEvaluate
validate()
Memvalidasi ekspresi langsung.
function validate()
validateTree()
Validasi pohon ekspresi secara rekursif.
function validateTree()
Diwariskan DariExpression.validateTree