「Defun-q-list-set」の版間の差分
編集の要約なし |
編集の要約なし |
||
(同じ利用者による、間の2版が非表示) | |||
1行目: | 1行目: | ||
{{AutoLISP}} | |||
; 構文 | ; 構文 | ||
: (defun-q-list-set '''sym'' ''list'') | : (defun-q-list-set '''sym'' ''list'') | ||
5行目: | 6行目: | ||
; 機能 | ; 機能 | ||
: シンボルの値を設定し、リストによって定義された関数にする。 | : シンボルの値を設定し、リストによって定義された関数にする。 | ||
; 引数 | ; 引数 | ||
:* sym : 関数名のシンボル。 | :* sym : 関数名のシンボル。 | ||
:* list : 関数に含まれる式を含んだリスト。 | :* list : 関数に含まれる式を含んだリスト。 | ||
; 戻り値 | ; 戻り値 | ||
: 定義された sym。 | : 定義された sym。 | ||
; サンプル | ; サンプル | ||
: (defun-q-list-set 'foo '((x) x)) | <pre class="brush: autolisp;"> | ||
(defun-q-list-set 'foo '((x) x)) | |||
''FOO'' | |||
(foo 3) | |||
3 | |||
</pre> | |||
: 次の例では、defun-q-list-set 関数を使用して、2 つの関数を 1 つの関数に結合する。 | : 次の例では、defun-q-list-set 関数を使用して、2 つの関数を 1 つの関数に結合する。 | ||
: defun-q 関数を使用して 2 つの関数を定義。 | : defun-q 関数を使用して 2 つの関数を定義。 | ||
<pre class="brush: autolisp;"> | |||
(defun-q s::startup (x) (print x)) | (defun-q s::startup (x) (print x)) | ||
S::STARTUP | S::STARTUP | ||
26行目: | 34行目: | ||
(defun-q my-startup (x) (print (list x))) | (defun-q my-startup (x) (print (list x))) | ||
MY-STARTUP | MY-STARTUP | ||
</pre> | |||
: defun-q-list-set 関数を使用して、上記の関数を 1 つの関数に結合。 | : defun-q-list-set 関数を使用して、上記の関数を 1 つの関数に結合。 | ||
<pre class="brush: autolisp;"> | |||
(defun-q-list-set 's::startup (append | (defun-q-list-set 's::startup (append | ||
(defun-q-list-ref 's::startup) | (defun-q-list-ref 's::startup) | ||
(cdr (defun-q-list-ref 'my-startup)))) | (cdr (defun-q-list-ref 'my-startup)))) | ||
'''S::STARTUP''' | '''S::STARTUP''' | ||
</pre> | |||
: 次に、2 つの関数がそれぞれどのように応答するか、 | : 次に、2 つの関数がそれぞれどのように応答するか、 | ||
: および defun-q-list-set 関数を使用して結合した後の関数がどのように動作するかを示す。 | : および defun-q-list-set 関数を使用して結合した後の関数がどのように動作するかを示す。 | ||
<pre class="brush: autolisp;"> | |||
(defun-q foo (x) (print (list 'foo x))) | (defun-q foo (x) (print (list 'foo x))) | ||
FOO | FOO | ||
55行目: | 65行目: | ||
(FOO 3) | (FOO 3) | ||
(BAR 3) (BAR 3) | (BAR 3) (BAR 3) | ||
</pre> | |||
----- | ----- | ||
関連事項 | 関連事項 |
2020年11月23日 (月) 14:36時点における最新版
- 構文
- (defun-q-list-set 'sym list)
- 機能
- シンボルの値を設定し、リストによって定義された関数にする。
- 引数
-
- sym : 関数名のシンボル。
- list : 関数に含まれる式を含んだリスト。
- 戻り値
- 定義された sym。
- サンプル
(defun-q-list-set 'foo '((x) x)) ''FOO'' (foo 3) 3
- 次の例では、defun-q-list-set 関数を使用して、2 つの関数を 1 つの関数に結合する。
- defun-q 関数を使用して 2 つの関数を定義。
(defun-q s::startup (x) (print x)) S::STARTUP (defun-q my-startup (x) (print (list x))) MY-STARTUP
- defun-q-list-set 関数を使用して、上記の関数を 1 つの関数に結合。
(defun-q-list-set 's::startup (append (defun-q-list-ref 's::startup) (cdr (defun-q-list-ref 'my-startup)))) '''S::STARTUP'''
- 次に、2 つの関数がそれぞれどのように応答するか、
- および defun-q-list-set 関数を使用して結合した後の関数がどのように動作するかを示す。
(defun-q foo (x) (print (list 'foo x))) FOO (foo 1) (FOO 1) (FOO 1) (defun-q bar (x) (print (list 'bar x))) BAR (bar 2) (BAR 2) (BAR 2) (defun-q-list-set 'foo (append (defun-q-list-ref 'foo) (cdr (defun-q-list-ref 'bar)) )) '''FOO''' (foo 3) (FOO 3) (BAR 3) (BAR 3)
関連事項
- defun-q 関数
- defun-q-list-ref 関数