, tip dönüştürme vb Ör:İz/ayıklama PowerShell operatörleri PowerShell'de
Trace-Command -PSHost -Name ParameterBinding -Expression { $null = "c:\" | dir}
...
DEBUG: ParameterBinding Information: 0 : Parameter [Path] PIPELINE INPUT ValueFromPipeline NO COERCION
DEBUG: ParameterBinding Information: 0 : BIND arg [c:\] to parameter [Path]
DEBUG: ParameterBinding Information: 0 : Binding collection parameter Path: argument type [String], parameter type [System.String[]], collection type Array, eleme
nt type [System.String], no coerceElementType
...
Ben -lt
karşılaştırma nasıl çalıştığını izlemek istediğini PS bazı garip behavious (belki de hata ayıklama sırasında her karakter için [int][char]"x"
'a dönüştürür.). Trace-Command
'u kullanmayı denedim, ancak hiçbir şey döndürmüyor.
Trace-Command -PSHost -Name TypeMatch, TypeConversion -Expression { "Less" -lt "less" }
#No trace-output, only returned value
False
#Get any type of trace-informatino
Trace-Command -PSHost -Name * -Expression { "Less" -lt "less" }
#No trace-output, only returned value
False
bu iç operatörleri kamera arkası nasıl çalıştığını öğrenmek için herhangi bir yolu var mı? İzleme bilgisi? Verbose çıkışı? Örnek olarak -lt
ve -gt
kullandım, ancak bu &
-operator kadar iyi olabilir ve nasıl komut veya başka bir şey ayrıştırır.
Benzer bir sorunum var. DynamicObject, IEnumerable ve TryBinaryOperation'ı geçersiz kılan kendi sınıfımı uyguladım. Ama PS karşılaştırma operatörleri benim türümün en soldaki işleneni olan TryBinaryOperator yöntemini çağırmıyor gibi görünüyor, bunun yerine doğru işlenen bir dizge ise GetEnumerator çağrıldı. AST PS'nin, karşılaştırma operatörleri için özel tiplerim için bunları doğru bir şekilde uygulayabilmeleri için neler yaptıklarını anlamaya ihtiyacım var. –