Facebook\HackCodegen\CodegenFactoryTrait
Facebook\HackCodegen\CodegenFactoryTrait
Trait to implement ` ICodegenFactory ` if no special behavior is provided
You must implement getConfig()
, but all other methods are final.
Interface Synopsis
namespace Facebook\HackCodegen;
trait CodegenFactoryTrait implements ICodegenFactory {...}
Public Methods
->codegenClass(string $name): CodegenClass
->codegenClassConstant(string $name): CodegenClassConstant
->codegenClassConstantf(\HH\Lib\Str\SprintfFormatString $format, \mixed ...$args): CodegenClassConstant
->codegenClassf(\HH\Lib\Str\SprintfFormatString $format, \mixed ...$args): CodegenClass
->codegenConstant(string $name): CodegenConstant
->codegenConstantf(\HH\Lib\Str\SprintfFormatString $format, \mixed ...$args): CodegenConstant
->codegenConstructor(): CodegenConstructor
->codegenEnum(string $name, string $enumType): CodegenEnum
->codegenEnumMember(string $name): CodegenEnumMember
->codegenEnumMemberf(\HH\Lib\Str\SprintfFormatString $format, \mixed ...$args): CodegenEnumMember
->codegenFile(string $file): CodegenFile
->codegenFilef(\HH\Lib\Str\SprintfFormatString $format, \mixed ...$args): CodegenFile
->codegenFunction(string $name): CodegenFunction
->codegenFunctionf(\HH\Lib\Str\SprintfFormatString $format, \mixed ...$args): CodegenFunction
->codegenGeneratedFromClass(string $class): CodegenGeneratedFrom
->codegenGeneratedFromMethod(string $class, string $method): CodegenGeneratedFrom
->codegenGeneratedFromMethodWithKey(string $class, string $method, string $key): CodegenGeneratedFrom
->codegenGeneratedFromScript(?string $script = NULL): CodegenGeneratedFrom
->codegenHackBuilder(): HackBuilder
->codegenImplementsInterface(string $name): CodegenImplementsInterface
->codegenImplementsInterfaces(\ Traversable<string> $names): vec<CodegenImplementsInterface>
->codegenInterface(string $name): CodegenInterface
->codegenMethod(string $name): CodegenMethod
->codegenMethodf(\HH\Lib\Str\SprintfFormatString $format, \mixed ...$args): CodegenMethod
->codegenNewtype(string $name): CodegenType
->codegenProperty(string $name): CodegenProperty
->codegenPropertyf(\HH\Lib\Str\SprintfFormatString $format, \mixed ...$args): CodegenProperty
->codegenShape(CodegenShapeMember ...$members): CodegenShape
->codegenTrait(string $name): CodegenTrait
->codegenType(string $name): CodegenType
->codegenTypeConstant(string $name): CodegenTypeConstant
->codegenTypeConstantf(\HH\Lib\Str\SprintfFormatString $format, \mixed ...$args): CodegenTypeConstant
->codegenUsesTrait(string $name): CodegenUsesTrait
->codegenUsesTraits(\ Traversable<string> $names): vec<CodegenUsesTrait>
->getConfig(): IHackCodegenConfig