<commit_before><?php

declare(strict_types=1);

namespace Mebius\DB;

/**
 * ConditionBuilder 投稿データから sql の where 文とプレースホルダー用データ配列を作成する抽象クラス
 */
abstract class ConditionBuilder
{
	/**
	 * @var ?\stdClass 投稿データをまとめたオブジェクト
	 */
	protected ?\stdClass $inputObj = null;
	/**
	 * @var string where 文の文字列
	 */
	protected string $condition = "";
	/**
	 * @var array プレースホルダーとして使用する値を入れる配列
	 */
	protected array $placeholder = [];
	/**
	 * コンストラクタ
	 * @param mixed $inputObj stdClass や入力データをまとめたクラスのインスタンスなど
	 */
	public function __construct($inputObj)
	{
		$this->inputObj = $inputObj;
		$this->build();
	}
	/**
	 * where 文を作成し、placeholder に値を格納するこのクラスの核となるメソッド。
	 * 抽象クラスで中身を実装すること
	 */
	abstract public function build();
	/**
	 * 検索条件など、where 文を取得するメソッド
	 * @return string where 文
	 */
	public function getCondition(): string
	{
		return $this->condition;
	}
	/**
	 * プレースホルダーに使う配列を取得するメソッド
	 * @return array プレースホルダーに使う配列
	 */
	public function getPlaceHolder(): array
	{
		return $this->placeholder;
	}
}
<commit_msg>conditionbuilder で inputObj の型を object にした<commit_after><?php

declare(strict_types=1);

namespace Mebius\DB;

/**
 * ConditionBuilder 投稿データから sql の where 文とプレースホルダー用データ配列を作成する抽象クラス
 */
abstract class ConditionBuilder
{
	/**
	 * @var object 投稿データをまとめたオブジェクト
	 */
	protected object $inputObj;
	/**
	 * @var string where 文の文字列
	 */
	protected string $condition = "";
	/**
	 * @var array プレースホルダーとして使用する値を入れる配列
	 */
	protected array $placeholder = [];
	/**
	 * コンストラクタ
	 * @param object $inputObj stdClass や入力データをまとめたクラスのインスタンスなど
	 */
	public function __construct(object $inputObj)
	{
		$this->inputObj = $inputObj;
		$this->build();
	}
	/**
	 * where 文を作成し、placeholder に値を格納するこのクラスの核となるメソッド。
	 * 抽象クラスで中身を実装すること
	 */
	abstract public function build();
	/**
	 * 検索条件など、where 文を取得するメソッド
	 * @return string where 文
	 */
	public function getCondition(): string
	{
		return $this->condition;
	}
	/**
	 * プレースホルダーに使う配列を取得するメソッド
	 * @return array プレースホルダーに使う配列
	 */
	public function getPlaceHolder(): array
	{
		return $this->placeholder;
	}
}

{'fraction_non_alphanumeric': 0.12451171875, 'fraction_numerical': 0.0009765625, 'mean_word_length': 3.866983372921615, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 11, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4528463', 'n_tokens_mistral': 999, 'n_tokens_neox': 971, 'n_words': 155}